电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

微机原理软件实验报告

微机原理软件实验报告_第1页
1/7
微机原理软件实验报告_第2页
2/7
微机原理软件实验报告_第3页
3/7
微机原理软件实验报告 篇一:北邮微机原理软件实验报告 微机原理软件实验报告 实验二分支,循环程序设计 一、预习题: 1.十进制数 0 -- 9 所对应的 ASCII 码是什么? 如何将十进制数 0 -- 9 在屏幕上显示出来? 答: 要屏显 0-9 的数码,可以调用 02h 中断,然后将要显示的数码的 ASCII 码存进 DL 里,然后执行 INT 21H 就可以打印字符。当然,若不只一个数,调用 09h 中断(显示字符串)更好,但要将DS:DXZ 指向要显示的数字在内存中的首地址,并要求以$结束。 2.如何检验一个数为正,为负或为零? 你能举出多少种不同的方法? 答:CMP X,0 检验标志位 CF CF=1,X 为负数 CF=0 接着检验 ZF:ZF=1,X 为零,ZF=0,X 为正数 二、实验目的: 1.开始独立进行汇编语言程序设计; 2.掌握基本分支,循环程序设计; 3.掌握最简单的 DOS 功能调用. 三、实验内容: 1.安排一个数据区,内存有若干个正数,负数和零.每类数的个数都不超过 9. 2.编写一个程序统计数据区中正数,负数和零的个数. 四、实验源代码 assume cs:code,ds:data data segment buff db 1,2,3,4,5,-1,-2,-3,0,0 ;安排的数据区 string db 0: plus db 0 db 0ah,0dh string1 db =0: zero db 0 db 0ah,0dh string2 db 0: minus db 0 db $ data ends code segment start:movax,data movds,ax mov cx,10 mov dx,0 mov ah,0 ;初始化,并将 CX 赋为 10,因为共有 10 个数 ;用变量 plus 来存储正数的个数 ;用变量 zero 来存储零的个数 ;用变量 minus 来存储负数的个数 ;将计数器 dx,ah 初始化为 0 lea bx,buff compare:cmp byte ptr [bx],0 jgeplu inc ah jmp next;取出一个数与 0 进行比较 ;大于等于0,跳至 plu 执行 ;小于 0,用 ah 暂存小于 0 的个数,ah+1 ;比完后进行下一个数的比较 plu: je zer ;等于 0,跳至 zer 执行 inc dljmp next zer: inc dh;大于0,用 dl 暂存大于 0 的个数,dl+1 ;比完后进行下一个数的比较 ;等于 0,用 dh 暂存等于 0 的个数,dh+1 ;将 dl,dh,ah 分别赋值给变量 plus,zero,minus,其 ASCII 分别加 next:incbx loop compare 48 add dl,48 movplus,dl add dh,48 movzero,dh add ah,48 movminus,ah mov ah,09h lea dx,string int 21h ;调用 09h 中断,将最终结果输出 mov ax,4...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

微机原理软件实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部