实验二 算术运算.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验二 算术运算

实验二 算术运算  PAGE \* MERGEFORMAT 8 汇编语言实验报告 (二) 班 级 姓 名: 南 征 学 号:信息与电子学院 实验二 算术运算 实验目的 熟悉利用汇编语言对多精度十六进制和十进制的编程方法,弄清带符号数及不带符号数的运算区别,理解各状态标志位的含义,以及运算结果对各状态标志的影响,掌握无符号数的乘除法运算并保证运算结果不溢出。 实验要点 对汇编语言的算术运算要分清是有符号的运算还是无符号的运算,当对无符号数进行加减时,要考虑进位CF,对于有符号数进行加减时,要考虑运算结果是否溢出。为防止溢出,常将操作数利用CBW或CWD指令进行符号扩展后再进行加减运算。对于多精度的加减运算时,对高位字节或字的加减法要分别采用ADC和DBB;对低位字节或字采用不带进位的加减指令ADD和SUB;在利用循环计算多字节的加减法时,可以用CLC指令将CF初始化为0,然后在循环体内统一使用带进位(或借位)的加减法指令。 在汇编语言进行十进制的加减运算时,首先需将操作数用BCD码示,并且要考虑操作数是用组合的BCD码还是用一个字节表示一个十进制数。对于组合的BCD码加减法,其结果应放在AL寄存器中,再用DAA和DAS指令进行二——十进制调整。二对于未组合的BCD码加减法,用AAA和AAS对结果进行二——十进制调整。此外在进行十进制数减法时,要考虑用大数减小数,因为十进制数运算不能用补码表示。 对于有符号数惩罚要用IMUL指令,对无符号数乘法要用MUL指令。字乘时AX为约定的一个乘数,其积在DX:AX中;字节相乘时AL为约定的一个乘数,其积在AX中。乘法指令中的操作数,不得为立即数,可以为通用寄存器或存储器操作数。 对于除法要用IDIV、DIV分别对有符号数和无符号数进行除法运算。字除法时被除数约定在DX:AX中;字节相除时,被除数约定在AX中,除法指令中的操作数可以为通用寄存器或者存储器操作数,但不得是立即数。在进行除法运算时要考虑除数是否为零,以及其商是否溢出,在出现除零溢出时,将产生类型号为0的内部中断。 实验任务及步骤 在数据段中一缓冲区内存放有无符号数0ABH和78H,64H和54H;试编程求这两组数的和、差,并将结果填入表格: 代码如下: DATA SEGMENT DATA1 DB 0ABH, 64H DATA2 DB 78H, 5AH COUNT EQU $-DATA2 DATA3 DW 6 DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA MAIN PROC FAR START: MOV AX, DATA MOV DS, AX MOV ES, AX LEA SI, DATA1 LEA DI, DATA2 LEA BX, DATA3 MOV CX, COUNT AGAIN1: XOR AH, AH MOV AL, [SI] ADC AL, [DI] ADC AH, 0 MOV [BX], AX INC SI INC DI INC BX INC BX DEC CX JNZ AGAIN1 LEA SI, data1 LEA DI, data2 MOV CX, COUNT CLC AGAIN2: MOV AL, [SI] SBB AL, [DI] MOV [BX], AL INC SI INC DI INC BX DEC CX JNZ AGAIN2 MOV AH, 4CH INT 21H MAIN ENDP CODE ENDS END START 运行结果如下: 0B3E:0000 AB 64 78 5A 23 01 BE 00-33 0A 00 00 00 00 00 00 0B3E:0010 B8 3E 0B 8E D8 8E C0 8D-36 00 00 8D 3E 02 00 8D 0B3E:0020 1E 04 00 B9 02 00 32 E4-8A 04 12 05 80 D4 00 89 0B3E:0030 07 46 47 43 43 49 75 EE-8D 36 00 00 8D 3E 02 00 0B3E:0040 B9 02 00 F8 8A 04 1A 05-88 07 46 47 43 49 75 F3 0B3E:0050 B4 4C CD 21 06 4E 91 00-00 2E C7 06 1A 92 5B 5D 0B3E:0060 2E C7 06 1C 92 7C 3C 2E-C7 06 1E 92 3E 2B 2E C7 0B3E:0070 0

文档评论(0)

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

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档