- 4
- 0
- 约1.37万字
- 约 70页
- 2017-02-01 发布于湖北
- 举报
4算术运算类指令 实现二进制(和十进制)数据的四则运算 1、加法运算: ADD ADC INC 2、减法运算:SUB SBB DEC NEG CMP CMPXCHG CMPXCHG8D 3、乘法运算:MUL IMUL 4、除法运算:DIV IDIV 5、符号扩展:CBW CWD 6、十进制调整:DAA DAS AAA AAS AAM AAD 本节要求 本节要求 四则运算是计算机经常进行的一种操作。算术运算指令也是经常使用的一类指令。 请注意算术运算指令对标志的影响 重点掌握:ADD/ADC SUB/SBB INC/DEC CMP 比较熟悉: NEG MUL/IMUL DIV/IDIV 一般了解: CBW CWD 认真理解:DAA DAS AAA AAS AAM AAD 加法指令ADD(add) ADD指令将源与目的操作数相加,结果送到目的操作数。 ADD指令按状态标志的定义相应设置0或1。 ADD reg,imm/reg/mem ;reg←reg+imm/reg/mem ADD mem,imm/reg ;mem←mem+imm/reg 例:加法运算 mov al,0fbh ;al=0fbh add al,07h ;al=02h mov word ptr [200h],4652h;[200h]=4652h mov bx,1feh ;bx=1feh add al,bl ;al=00h add word ptr [bx+2],0f0f0h;[200h]=3742h 带进位加法指令ADC(add with carry) ADC指令将源与目的操作数相加,再加上当前进位CF标志,结果送到目的操作数。 ADD指令按状态标志的定义相应设置0或1 。 ADC reg,imm/reg/mem ;reg←reg+imm/reg/mem+CF ADC mem,imm/reg ;mem←mem+imm/reg+CF 例无符号多字节加法运算 两个无符号的五字节十六进制数的加法运算: BH EH 0AAAAAABA9H 解1 ADD与ADC配合 解2 只使用ADC指令 解1 ADD与ADC配合 DATA SEGMENT FIRST DB 0AB,78H,56H,34H,12H,00H SECOND DB 0FEH,32H,54H,76H,98H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AL,SECOND[0] ADD FIRST[0],AL MOV CX,4 ;循环4次 MOV SI,1 ;下标初始化为1 L1:MOV AL,SECOND[SI] ADC FIRST[SI],AL INC SI ;为下一次循环做准备 LOOP L1 ;循环未结束时,跳转到L1 MOV AL,0 ;将最高位产生的进位送入 ADC AL,0 ;目的地 MOV FIRST[SI],AL MOV AX,4C00H ;返回DOS INT 21H CODE ENDS END START 解2 只使用ADC指令 DATA SEGMENT FIRST DB 0AB,78H,56H,34H,12H,00H SECOND DB 0FEH,32H,54H,76H,98H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV CX,5 ;循环5次 MOV SI,0 ;下标初始化为0 CLC ;将CF清0 L1:MOV AL,SECOND[SI]
您可能关注的文档
最近下载
- 某天然气公司燃气系统运行安全现状评价报告.doc
- 维修Switch+中文版教程.pdf VIP
- 公共营养师四级试题【含答案】.docx VIP
- 统编人教部编版小学六年级下册道德与法治第一单元教学案.docx VIP
- IPC-6012F-CN-中文版 2024 TOC 刚性印制板的鉴定及性能规范.pdf VIP
- 2025年寒假作业七年级生物北师大版答案.pdf VIP
- impella for doctors左心辅助知识讲座.pptx VIP
- 成人患者医用粘胶相关性皮肤损伤的预防及护理(1).pptx VIP
- 安徽省高新技术产品国际竞争力:现状、挑战与提升策略.docx VIP
- PENTAX宾得 645NII相机手册.pdf VIP
原创力文档

文档评论(0)