微机原理答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 8086/8088 指令系统与寻址方式习题
3. 3 8086 系统中,设 DS=1000H , ES=2000H ,SS=1200H ,BX=0300H ,SI=0200H , BP=0100H VAR 的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作 数为存储器操作数,计算它们的物理地址。
1) MOV BX , 12 ;目标操作数为寄存器寻址
2) MOV [BX] , 12
;目标操作数为寄存器间址 PA=10300H 3) MOV ES: [SI] , AX ;目标操作数为寄存器间址 PA=20200H 4) MOV VAR , 8
;目标操作数为存储器直接寻址 PA=10600H 5) MOV [BX][SI] , AX ;目标操作数为基址加变址寻址 PA=10500H 6) MOV 6[BP][SI] , AL ;目标操作数为相对的基址加变址寻址 PA=12306H 7) MOV [1000H] , DX ;目标操作数为存储器直接寻址 PA=11000H 8) MOV 6[BX] , CX ;目标操作数为寄存器相对寻址 PA=10306H 9)
MOV
VAR+5, AX
;目标操作数为存储器直接寻址 PA=10605H
3.4 下面这些指令中哪些是正确的?那些是错误的?如果是错误的,请说明原因。
1) XCHG CS , AX ;错,CS 不能参与交换
2) MOV [BX] , [1000] ;错, 存储器之不能交换 3) XCHG BX , IP ;错, IP 不能参与交换 4) PUSH CS
5) POP CS
;错, 不能将数据弹到 CS 中
6) IN BX , DX ;输入 / 输出只能通过 AL/AX 7) MOV BYTE[BX] , 1000 ;1000大于 255,不能装入字节单元 (8) MOV CS ,[1000] ; CS 不能作为目标寄存器
(9) MOV BX ,OFFSET VAR[SI] ; OFFSET 只能取变量的偏移地址 10) MOV AX , [SI][DI] ; SI 、DI 不能成为基址加变址 (11) MOV COUNT[BX][SI],ES: AX ; AX 是寄存器,不能加段前缀
3. 7 设当前SS=2010H, SP=FE00H BX=3457H 计算当前栈顶的地址为多少?当执行 PUSH BX 指令后,栈顶地址和栈顶 2 个字节的内容分别是什么?
当前栈顶的地址 =2FF00H
当执行 PUSH BX 指令后,栈顶地址 =2FEFEH
( 2FEFEH) =57H
( 2FEFFH) =34H
AX CF ZF OF SF PF
1) XOR AX , V ALUE 134EH 0 0 0 0 1 2) AND AX , V ALUE ; 0821H 0 0 0 0 1 3) SUB AX , V ALUE ; F142H 1 0 0 1 1 4) CMP AX , VALUE
0A69H 1 0 0 1 1 5) NOT AX
; F596H X X X X X
6) TEST AX , VALUE
;
0A69H 0
0 0
1
3. 8 设 DX=78C5H , CL=5, CF=1,确定下列各条指令执行后, DX 和CF 中的值。
(1) SHR DX , 1 ; DX=3C62H CF=1 (2) SAR DX , CL ; DX=03C6H CF=0
(3) SHL DX , CL ; DX=18A0H CF=1
(4) ROR DX , CL ; DX=2BC6H CF=0
(5) RCL DX , CL ; DX=18B7H CF=1
(6)
RCR DH , 1
; DX=BCC5H
CF=0;
1927H,写出下列各条指令执行后寄
3. 9 设AX=0A69H VALUE 字变量中存放的内容为 存器和 CF ZF 、OF SF 、PF 的值。
3. 10设AX和BX中是符号数,CX和DX是无符号数,请分别为下列各项确定CMP和条件转移指令。
(1)CX值超过DX转移。
(2)AX未超过BX转移。
(3)DX为0转移。
(4)CX值等于小于DX转移。
(1) CMP CX , DX
JA NEXT
(2) CMP AX , BX
JLE NE XT
(3) CMP DX , 0
JZ NEXT
(4) CMP CX , DX
JB
I
E NE :XT
3. 11 阅11 阅读分析下列指令序列:
ADD AX , BX JNO L1
JNC L2
SUB AX , BX
JNC L3
JNO L4
JMP L5
若AX和BX的初值分别为以下 5种情况,则执行该指令序列后,程序将分别转向何处
(
(L1〜L5中的一个)。
(1) AX=13C6H BX=80DCH
(2) AX=0B568H BX=54B7H
(3) AX=42C8H BX=608DH
(4) AX=0D023H BX=9FD0H
(5) AX=9FD0H BX=0D023H
(1) 转L1
(2) 转L1
(3) 转L2
(4) 转L5
(5) 转L5
第四章汇编语言程序设计习题
4. 5画出下列语句中的数据在存储器中的存储情况。
VARB
VARW
VARC
DB 34 , 34H , ' GOOD 2 DUP (1, 2 DUP ( 0))
DW 5678H, ' CD, $+2, 2 DUP (100)
EQU 12