网站大量收购闲置独家精品文档,联系QQ:2885784924

《计算机原理与汇编语言》课程设计报告.doc

《计算机原理与汇编语言》课程设计报告.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
该设计论文已经通过各大高校老师审核认可并通过答辩,准确完整无误。欢迎大家下载学习交流。如有疑问可随时联系店主,竭诚为您解答!!

中南大学 计算机原理与汇编语言 课程设计报告 目录: 实验一:使用子程序,计算出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、附录:带注释的源程序。 DATAS SEGMENT ;此处输入数据段代码 count dw 0;计数器 sushu dw 1000 dup(?);存放素数 information db The sushu between 1 and 1000 are:,$;显示素数的提示信息 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 lea dx,information;显示提示信息 mov ah,9 int 21h mov ah,2 mov dl,0dh int 21h mov dl,0ah int 21h call jisuan call dispsushu MOV AH,4CH INT 21H jisuan proc near lea di,sushu mov ax,2 L1: cmp ax,1000 ja exit;大于1000跳出子循环 mov bx,2 L2: cmp bx

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档