北理工-汇编-实验二-算术运算类操作实验(共10页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《北理工-汇编-实验二-算术运算类操作实验(共10页).doc》由会员分享,可在线阅读,更多相关《北理工-汇编-实验二-算术运算类操作实验(共10页).doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 本科实验报告实验名称: 实验二 算术运算类操作实验(基础与设计) 课程名称:CPU与汇编实验实验时间:任课教师:实验地点:实验教师:实验类型: 原理验证 综合设计 自主创新学生姓名:学号/班级:组 号:无学 院:信息与电子同组搭档:无专 业:信息工程成 绩:专心-专注-专业一、实验要求和目的1.了解汇编语言中的二进制、十六进制、十进制、BCD码的表示形式;2.掌握各类运算类指令对各状态标志位的影响及测试方法;3.熟悉汇编语言二进制多字节加减法基本指令的使用方法;4.熟悉无符号数和有符号数乘法和除法指令的使用;5.掌握符号位扩展指令的使用;6.掌握BCD码调整指令的使
2、用方法。二、软硬件环境1、硬件环境:计算机系统windows;2、软件环境:装有MASM、DEBUG、LINK、等应用程序。三、实验涉及的主要知识1加减法处理指令2乘除法指令和符号位扩展指令3BCD 码的调整指令四、实验内容(一)对于两组无符号数,087H 和034H,0C2H 和5FH,试编程求这两组数的和差积商,并考虑计算结果对标志寄存器中状态标志位的影响:计算状态标识表达式结果(H)CFAFZFOFSFPF087H +034H00BB000001087H -034H0053000001087H *034H1B6C000001087H/034H0002(1F)0000010C2H+5FH0
3、1210100010C2H-5FH00630100010C2H*5FH47FE0100010C2H/5FH0002(04)010001开始结束将两组数据分别存入AX,BX中,将二者中的数据相加,存入AX中将两组数据分别存入AX,BX中,用AX中数据减去BX中数据,存入AX中将两组数据分别存入AX,BX中,将二者中的数据相乘,存入AX中将两组数据分别存入AX,BX中,用AX中数据除以BX中数据,存入AX中1. 流程图2.程序代码:DATAS SEGMENTDATAS ENDSSTACKS SEGMENTSTACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DAT
4、AS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX MOV AX,0C2HMOV BX,5FHADD AX,BX;add MOV AX,0C2HMOV BX,5FHSUB AX,BX;sub MOV AX,0C2HMOV BX,5FHMUL BX;mul MOV AX,0C2HMOV BX,5FHDIV BX ;divMOV AH,4CH INT 21HCODES ENDSEND START(将数据改变得到另一组输出结果)3. 实验结果以第一组数的加法为例(已将截图以上输入-t进行debug的步骤省略)此时右下角信息(NV UP)代表标志寄存器的值 。4. 结果
5、分析:由资料可得:1.CF(carry flag):进位标志位,运算结果需要进位为1,不需进位为02.PF(parity flag):奇偶标志位,当运算结果的低8位中的“1”的个数为偶数时PF=1,为奇数时,PF=0。3.AF(auxiliary flag):辅助进位标志,第3位有进位为1,无进位为04.ZF(zero flag):零标志位,当运算结果为零时ZF=1,否则ZF=0。5.SF(sign flag):符号标志位,当运算结果的最高位为1时SF=1,否则SF=0。6.OF(overflow flag):溢出标志位,当算术运算结果超出了带符号数的范围,即溢出时,OF=1,否则OF=0.其
6、中注意在本程序中,SUB影响全部的条件标志:1. 减法的CF反应的是无符号数运算中的借位情况:当减数被减数是CF=1,否则CF=0;2.OF:如果两个数的符号相反而结果的符号与减数相同,则OF=1,否则OF=0;3.SF(运算结果0为1否则为0)、ZF(零标志)、AF(辅助进位标志)、PF(奇偶标志)根据其含义设置。(二)在数据段定义了两个多精度的有符号16 进制数,FIRST 和SECOND ,1)求两数的和与差,并将结果存放在THIRD 为首地址的缓冲区中;2)如果把两组数据当作十进制数据来处理,再次求两数的和与差,并将结果存放在FORTH 为首地址的缓冲区中。试编程实现上述运算。FIRS
7、T DW 45H,82H,96H,57HSECOND DW 12H,46H,83H,45H16进制结果10进制结果FIRST +SECOND00 57 C9 19 9CH00 58 29 80 02DFIRST -SECOND00 33 3C 13 12H00 33 36 13 12D1.流程图SI,DI,CX均自减1将FIRSTSI+3与SECONDSI+3存入AL、BL,带进位相加,再加上CF的值。结果存入THIRDDI+4中。设定寄存器初始值SI=0,DI=0,CX=3,作为计数器开始取值是否加到最高位(CX=0)将AX值强制显示在THIRDDI+4中(若有高位则存入THIRDDI+5)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北理工 汇编 实验 算术 运算 操作 10
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内