实验二 算术逻辑运算及移位操作.doc

上传人:ng****60 文档编号:3181526 上传时间:2019-05-24 格式:DOC 页数:9 大小:853KB
下载 相关 举报
实验二  算术逻辑运算及移位操作.doc_第1页
第1页 / 共9页
实验二  算术逻辑运算及移位操作.doc_第2页
第2页 / 共9页
实验二  算术逻辑运算及移位操作.doc_第3页
第3页 / 共9页
实验二  算术逻辑运算及移位操作.doc_第4页
第4页 / 共9页
实验二  算术逻辑运算及移位操作.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、实验二 算术逻辑运算及移位操作一实验任务1.实验程序段及结果表格如表: 标志位 CF ZF SF OF PF AF0 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 1 10 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 0程序段 1:MOV AX, 1018HMOV SI, 230AHADD AX, SIADD AL, 30HMOV DX, 3FFHADD AX,BXMOV 20H, 1000HADD 20H, AXPUSH AXPOP BX 0 0 0 0 0 00 0 0 0 0

2、 00 0 0 0 0 01 0 0 0 1 11 0 0 0 1 11 0 0 0 1 00 1 0 0 1 00 0 0 0 0 00 0 1 0 1 00 0 0 0 1 0程序段 2:MOV AX, 0A0AHADD AX, 0FFFFHMOV CX, 0FF00HADC AX, CXSUB AX, AXINC AXOR CX, 0FFHAND CX, 0F0FHMOV 10H, CX 0 0 0 0 1 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 0程序段 3: MOV BL, 25HMOV BYTE PTR10H, 4MOV AL, 10

3、H 0 0 0 0 0 0MUL BL00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 0程序段 4:MOV WORD PTR10H,80HMOV BL, 4MOV AX, 10HDIV BL0 0 0 0 0 00 0 0 0 0 00 0 0 0 0 01 0 1 0 1 10 0 0 0 0 10 0 0 0 1 10 0 0 0 1 10 0 1 0 1 00 0 1 0 0 00 0 1 0 0 01 0 0 1 1 0程序段 5:MOV AX, 0DEC AXADD AX, 3FFFHADD AX, AXNOT AXSUB AX, 3OR AX

4、, 0FBFDHAND AX, 0AFCFHSHL AX,1RCL AX,1 0 0 0 1 1 0分析:程序段 1:MOV AX, 1018H ;AX1018HMOV SI, 230AH ; SI230AHADD AX, SI ;AX=3322H ,低 8 位为 00100010B,1 的个数;为偶数,PF=1,同时 D3 向 D4 有进位发生,AF=1ADD AL, 30H ;AX=3352H,低 8 位 1 个个数为奇数,PF=0MOV DX, 3FFH ;DX 3FFHADD AX,BX ;AX=3352H,MOV 20H, 1000H ;20H 1000HADD 20H, AX ;2

5、0H=4352HPUSH AX ;POP BX ;BX=3352H程序段 2: MOV AX, 0A0AH ;AX0A0AHADD AX, 0FFFFH ;AX=0A09H ,最高位进位 CF=1,低 8 位 1 的;个数为偶数 PF=1;D3 向 D4 进位 AF=1MOV CX, 0FF00H ;CX0FF00HADC AX, CX ;AX=090AH ,最高位进位 CF=1,低 8 位 1 的个;数为偶数 PF=1SUB AX, AX ; AX=0,运算结果为零 ZF=1 INC AX ;AX=1HOR CX, 0FFH ;CX=0FFFFH ,最高位为 1,ZF=1,低 8 位 1 的

6、;个数为偶数 PF=1AND CX, 0F0FH ;CX=0F0FH ,低 8 位 1 的个数为偶数 PF=1MOV 10H, CX ;10H0F0FH程序段 3: MOV BL, 25H ;BL25HMOV BYTE PTR10H, 4 ;10H04HMOV AL, 10H ;AL 04HMUL BL ;AL=94H程序段 4:MOV WORD PTR10H,80H ;10H0080HMOV BL, 4 ;BL04HMOV AX, 10H ;AX0080HDIV BL ;AX=0020H程序段 5:MOV AX, 0 ;AX0000HDEC AX ;AX=0FFFFH,最高位为 1,SF=1

7、,低 8;位 1 的个数为偶数 PF=1,最高位向前、;D3 向 D4 有借位,CF=1 ,AF=1ADD AX, 3FFFH ;AX=3FFEH,D3 向 D4 有进位,AF=1ADD AX, AX ;AX=7FFCH,低 8 位 1 的个数为偶数,PF=1;D3 向 D4 有进位,AF=1NOT AX ;AX=8003H SUB AX, 3 ;AX=8000H ,低 8 位 1 的个数为偶数,PF=1;最高位为 1,SF=1OR AX, 0FBFDH ;AX=0FBFDH,最高位为 1,SF=1AND AX, 0AFCFH ;AX=0ABCDH ,最高位为 1,SF=1SHL AX,1 ;

8、AX=579AH ,低 8 位 1 的个数为偶数,PF=1,;算数结果溢出 OF=1,最高位进位 CF=1RCL AX,1 ;AX=0AF35H,低 8 位 1 的个数为偶数,;PF=1 ,算数结果溢出 OF=12.用 BX 寄存器作为地址指针,从 BX 所指的内存单元(0010H)开始连续存入三个无符号数(10H、04H、30H),接着计算内存单元中的这三个数之和,和放在 0013H 单元中,再求出这三个数之积,积放 0014 单元中。写出完成此功能的程序段并上机验证结果。程序段:LEA BX,0010HMOV BX,10HMOV BX+1,04HMOV BX+2,30HMOV AX,000

9、0HADD AL,BXADD AL,BX+1ADD AL,BX+2MOV DS:0013H,ALMOV AL,BXMUL BX+1MUL BX+2MOV DS:0014,AX上机验证:3.写出完成下述功能的程序段。上机验证你写出的程序段,程序运行的最后结果(AX) ?(1) 传送 15H 到 AL 寄存器;(2) 再将 AL 的内容乘以 2;(3) 接着传送 15H 到 BL 寄存器;(4) 最后把 AL 的内容乘以 BL 的内容。程序段:MOV CL,02HMOV AL,15HMUL CLMOV BL,15HMUL BL结果 AX=0372H 4写出完成下述功能的程序段。上机验证你写出的程序

10、段,程序运行后的商?(1) 传送数据 2058H 到 DS:1000H 单元中,数据 12H 到 DS:1002H 单元中;(2) 把 DS:1000H 单元中的数据传送到 AX 寄存器;(3) 把 AX 寄存器的内容算术右移二位;(4) 再把 AX 寄存器的内容除以 DS:1002H 字节单元中的数;(5) 最后把商存入字节单元 DS:1003H 中。程序段:MOV DS:1000H,2058HMOV DS:1002H,12HMOV AX,DS:1000HSAR AX,2MOV BL,DS:1002HDIV BLMOV DS:1003H,AX最后商为 73H5.下面的程序段用来清除数据段中从

11、偏移地址 0010H 开始的 12 个字存储单元的内容(即将零送到这些存储单元中去) 。(1) 将第 4 条比较指令语句填写完整(划线处) 。MOV SI,0010HNEXT: MOV WORD PTRSI,0ADD SI,2CMP SI, 001CH JNE NEXTHLT(2) 假定要按高地址到低地址的顺序进行清除操作(高地址从 0020H 开始) ,则上述程序段应如何修改?MOV SI,0020HNEXT: MOV BYTE PTRSI,0SUB SI,1CMP SI,0014H JNE NEXTHLT6输入并运行表 1.3 中的程序段,把结果填入表右边的空格中,并分析结果,说明本程序段

12、的功能是什么。程序段 字单元(1A00H)= 字单元(1A02H)=AA55 0000AA55 2AD5AA55 55AAAA55 55AAAA55 55AAAA55 AB55MOV 1A00H, 0AA55HMOV 1A02H, 2AD5HSHL WORD PTR1A02H,1 CMP 1A00H, 8000HCMCRCL WORD PTR1A02H,1RCL WORD PTR1A00H,154AA AB55说明:MOV 1A00H, 0AA55H ;1A00H 0AA55HMOV 1A02H, 2AD5H ;1A02H 2AD5HSHL WORD PTR1A02H,1 ;1A02H=DAT

13、A*2CMP 1A00H, 8000H ;1A00H8000H,结果不送回1A00HCMC ;进位标志取反RCL WORD PTR1A02H,1 ;将1A02H带 CF 的循环左移一位RCL WORD PTR1A00H,1 ;将1A00H带 CF 的循环左移一位二简答3.简要说明 ADD,SUB,AND,OR 对标志位的影响。答:4 条指令满足以下条件时会对个标志位产生影响:CF:当进行加减运算时若最高位向前有进位或借位,则 CF=1,否则 CF=0。PF:当运算结果的低八位中 1 的个数为奇数时 PF=1,否则 PF=0。AF:在加减法操作中,D3 向 D4 有进位或借位时 AF=1,否则 AF=0。ZF:当运算结果为零时 ZF=1。SF:当运算结果最高位为 1 时 SF=1,否则 SF=0。OF:当运算结果溢出时 OF=1。4.简要说明一般移位指令与循环移位指令之间的区别答:一般移位指令将最左(右)端移入 CF,而另一端则会补 0。循环移位指令同样将最左(右)端移入 CF,但另一端会用 CF 或最左(右)端填充。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。