- 13
- 0
- 约1.51万字
- 约 27页
- 2018-12-03 发布于浙江
- 举报
《计算机原理及汇编语言》课程设计报告
中南大学
计算机原理与汇编语言
课程设计报告
目录:
一.实验一:使用子程序,计算出1000 以内的素数,以十进制形式输出。
1、需求分析
2、总体设计
3、详细设计
4、调试分析
5、测试结果
6、附录:带注释的源程序。
二.实验二:计算50 以内Fibonacci 数,以十进制形式输出。
1、需求分析
2、总体设计
3、详细设计
4、调试分析
5、测试结果
6、附录:带注释的源程序。
三.实验三:从键盘输入年份,通过计算后,输出该年份是否为闰年的信息。
1、需求分析
2、总体设计
3、详细设计
4、调试分析
5、测试结果
6、附录:带注释的源程序。
四.实验四:反向输出一个整数
1、需求分析
2、总体设计
3、详细设计
4、调试分析
5、测试结果
6、附录:带注释的源程序。
五.课程设计总结
六.参考文献
一.实验一
使用子程序,计算出1000 以内的素数,以十进
制形式输出。
1、需求分析
程序的功能:以十进制形式输出1000 以内的素数
变量以及数组需求:需要一个变量count来计数,以便于素数的输出;需要一个数组sushu
来存放计算过程中得到的素数
寄存器需求:在汇编里面,除法运算只能是16位除以8位或者32位除以16位,1000 比255
大,因此要用32位除以16,要用dx,ax来存放除数,bx存放被除数
2、总体设计
程序开始
将求得素数以
计算素数并储存
十进制输出
程序结束
3、详细设计
求素数的算法
素数的约数只有1和本身
bool isPrime(int n)
{
if(n 2) return false;
for(int i 2; i n; ++i)
if(n%i 0) return false;
return true;
}
数据要以十进制输出,ASCII码要加上48
dispsushu proc near
lea si,sushu
mov cx,count;控制输出
L5:
mov bx,[si]
call disp10
mov dl,20h
mov ah,2
int 21h
add si,2
loop L5
ret
dispsushu endp
disp10 proc near;该子程序的作用是将BX 中的数以十进制形式输出
push cx
mov cx,100d;转化百位
mov ax,bx
mov dx,0
div cx
mov bx,dx
mov dl,al
add dl,30h;加48,变成字符型
mov ah,2
int 21h
mov cx,10d;转化十位
mov ax,bx
mov dx,0
div cx
mov bx,dx
mov dl,al
add dl,30h
mov ah,2
int 21h
mov dl,bl
add dl,30h;转化个位
mov ah,2
int 21h
pop cx
ret
disp10 endp
4、调试分析
编写过程中遇到了一些问题
这个错误系因为将count变量设为db型,而后面的数据存储时,用的是字节dw
型
这个错误找了好久,后来发现是个位输出程序有误,忘记了将余数赋给dl
5、测试结果
更正错误后,输出如下:
6、附录:带注释的源程
您可能关注的文档
最近下载
- 2021年高考物理真题试卷(湖南卷).docx VIP
- 2022年湖南省新高考物理试卷.doc VIP
- 2022年湖南省新高考物理试卷.docx VIP
- 2022年高考物理试卷(湖南)(解析卷).doc VIP
- 2023年高考物理试卷(湖南)(解析卷).pdf VIP
- 2025年河南省高考物理试卷真题(含答案详解) 原卷.pdf
- 小学生成长档案男童word模板30页.docx VIP
- 成都市锦江区2026届初三一诊(暨期末考试)数学试卷(含答案).pdf
- 2025年国际医院护理笔试题库及答案.docx VIP
- 2022年新教材人教版高中物理必修第一册第三章相互作用--力 习题课件练习课件.pptx VIP
原创力文档

文档评论(0)