微机原理习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、设有关寄存器及存储器单元的内容如下:
DS=3000H, BX=0200H, SI=0002H, 30200H=24H, 30202H=0ACH,30203H=0F0H,31300H=54H, 31301H=98H, 31302H=6DH。
问下列各条指令执行完后,AL或 AX寄存器的内容各是什么?
分析:(1)Mov AX,1300H指令的源操作数为立即寻址方式且为字操作,所以该指令执行完后,Ax=1300H。
(2)MOV AL,BL指令的源操作数为寄存器寻址方式址为字节操作,所以该指令执行完后,AL =00H
(3)Mov Ax,[1300H]指令的源操作数为直接寻址方式且为字操作,执行该指令时,是将DS ×10H+1300H=31300的字内容送Ax,所以该指令执行完后,Ax=9854H。
(4)Mov AL,[Bx]指令的源操作数为寄存器间接寻址方式且为字节操作,执行该指令时,是将DS×10H+Bx=30200H的内容送AL,所以该指令执行完后,AL=24H。
(5)Mov AL,1100H[Bx]指令的源操作数为寄存器加位移量寻址方式且为字节操作,执行该指令时,是将DS*10H+BX+1100H=31300H的内容送AL,所以该指令执行完后,AL=54H。(6)MovAX,[BX][SI]指令的源操作数为基址变址寻址方式且为字操作,执行该指令时是将DS×10H+BX+SI=30202H的内容送AX,所以该指令执行完后,AX=F0ACH。
(7)Mov AL,1100H[Bx][SI]指令的源操作数为基址变址加位移量寻址方式且为字节操作,执行该指令时,是将DS×10H+BX+SI+1100H=31302H的内容送AL,所以该指令执行完后,AL=6DH。
2.
3.
4.
.
P90-94、直接寻址
源和目的操作数由段选择子和偏移量引用:
存储器操作数的有效地址EA在指令中直接给出。
例 MOV AL, [ 2000H ]
默认段寄存器为DS。
操作数所在内存单元的物理地址为:
PA = ( DS )×10H + EA
5.
6.
D A T A
D A T A
分析:ASCII码由7位二进制表示,每ASCII码表示的数码占内存的一个存储单元,BCD码由4位二进制数表示,两个BCD码数据占内存的一个存储单元,其中高地址数据存放在高4位。ASCII码减去30H就得到对应数码的BCD码。
7.
8.
9.
10.
11.12.13.
14.
15.16.
17.18.
19 .
20.
21.
22.
23.
24、如果8259A初始化过程需要ICW4,系统使用多个8259A且输入是电平触发的,那么ICW1应写入什么值?假定所有无用位均为0,将结果用二进制和十六进制数表示。
解:ICW1=00011001B=19H
分析:ICW1的格式如图
25、如果8259A输出到总线上的类型码范围从FOH—F7H,那么寄存器ICW2应写入什么?解:ICW2==F0H
分忻:ICW2的格式如图所示。
D7-D3=l1110B
低3位为无关状态,取0。
因此完整的命令字是:
D7-D0=B=FOH
26、假定主8259A配置成IR3-IR0输入直接从外部电路接受输入,但是IR7一IR4则由从片的INT输出提供,则主片的初始化命令字ICW3的码值为多少?
解:ICW3=B=F0H
27、如果将中断输入IR3-IR0屏蔽,IR7-IR4撤消屏蔽,则OCW1码为多少
解:OCW1=00001111B=OFH
28、如果优先级策略选择按非特殊EOI命令循环移位.则OCW2应为多少?
解:OCW2=B=AOH
第二章习题课
1、2、
3、
第三章 指令系统 习题课
1、若要使寄存器AL 中的高4位不变,低4位为0,所用指令为( B )。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH
2、下列MOV 指令中,不正确的指令是( D )。
A. MOV AX, BX
B. MOV AX, [BX]
C. MOV AX, CX
D. MOV AX, [CX]
3、已知BX=7830H ,CF=1,执行指令:ADC BX ,87CFH 之后,BX= ,
标志位的状态
分别为
4、
CF= ,ZF= ,SF= 。
答案:0000H,1,1,0
4、程序如下:
MOV AX,0
MOV BX,1
MOV CX,100
A:ADD AX,BX
INC BX
LOOP A
HLT
执行后的结果为(BX)= C 。
A)99 B)100 C)101 D)102
5、源程序如下:
MOV CL,4
MOV AX,[2000H]
SHL AL,CL
SHR AX,CL
MOV [2000H],AX
试问:(1)若程序执行前,数据段内(2000H)=09H,(2001H)=03H, 则执行后有(2000H)= ,(2001H)= 。
(2) 本程序段的功能是什么?
答案:39H、00H;将(2000H),(2001H)两相邻单元中存放的未组合型BCD码压缩成组合型BCD 码,并存入(2000H)单元,0(2001H)
6、源程序如下:
MOV AL,0B7H
AND AL,0DDH
XOR AL,81H
OR AL,33H
JP LAB1
JMP LAB2
试问:(1)执行程序后AL= ;
(2)程序将转到哪一个地址执行:。
答案:37H、LAB2
7、设有100个字节数据(补码),存放在数据段中EA=2000H的存储区内,以下程序应能从该数据区中找出最大的一个数并存人同一数据段EA=2100H的单元中,请完成该程序(在空白处填入适当的语句)。
MAX:MOV BX,;
MOV AL,[BX]
MOV CX,;
LOOP1:INC BX
CMP AL,[BX]
LOOP2
MOV AL,[BX]