微型计算机原理_课后习题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章
2. 设机器字长为6位,写出下列各数原码、补码和移码:
10101
11111
10000
-10101
-11111
-10000
真值 -10101
原码 110101
补码 101011
移码 101010
x 10101 [x]移码 2n 1 x n6
111111
10101
101010
5. 设机器字长为8位,最高位为符号位,试对下列各算式进 行二进制补码运算:
-33+(-37)=? -70
[33]原码 1010,0001
-90+(-70)=?
[90]原码 1101,1010
[33]补码 1101,1111
[90]补码 1010,0110
[-37]原码 1010,0101
[-70]原码 1100,0110
[-37]补码 1101,1011 1101,1111
画出SRAM、EPROM与8088 CPU的连线,并写出各芯片组的地址域。
解:1)用4K×4位SRAM芯片组成16K×8位的存储空间
需要8个RAM芯片,4个芯片组,12根片内地址线、2根片选地址线。
A19、 A18、 A17、 A16、 A15、 A14、A13、A12、A11~A0 1、 1、 1、 1、 1、 1、 1、 1、 0… 0
(AX)=14H (BX)=0200H (DX)=00H (CX)=00H
↓ LOOP LLL
第四章 4.编写一个字符串copy的宏,要求有三个参数,分别
是源字符串地址、目的字符串地址、要copy的字节数。 COPY MACRO BUF1,BUF2,NUM
LEA SI, BUF1 LEA DI, BUF2 MOV CX, NUM CLD REP MOVSB ENDM
第三章 3、 设DS = 2000H,BX = 1256H,SI = 528FH,偏移量 = 20A1H, [232F7H] = 3280H,[264E5] = 2450H。若独立执行下述指令后,请 给出对应IP寄存器的内容。
(1) JMP BX;IP=? (2) JMP [BX][SI];IP=? 解: 1)是段内间接寻址,所以IP=1256H 2)是段内间接寻址 偏移地址:(BX)+(SI)=1256H+528FH=64E5H 物理地址:DS×10H+64E5H=264E5H [264E5]=2450H 所以IP=2450H
0101,1001
(3)46H 59H 59H 89D [89]原 1101,1001 [89]补 1010,0111
(1) A400H 7100H
1110,1101
0100,0110
1010,0100,0000,0000 0111,0001,0000,0000
Cs 1,C p 1,无溢出,OF 0
REP MOVSB
(2) CLD
LEA DI,ES:[0404H]
MOV CX,0080H
XOR AX,AX
2)将从内存0404H单元开
REP STOSW
始的128个字单元清零
10.假设在下列程序段的括号中分别填入以下命令:
(1) LOOP LLL
(2) LOOPNZ LLL
(3) LOOPZ LLL
第六章
6、对下列RAM芯片组排列,各需要多少个RAM芯片?多少个芯片组?多少根 片内地址线?若和8088 CPU相连,则又有多少根片选地址线?
1 K × 4位芯片组成16 K × 8位存储空间 8 K × 8位芯片组成512K × 8位存储空间 解: (1)需要32个RAM芯片,16个芯片组,10根片内地址线、4根片选地址线。
2、假如8086 CPU中,(CS) = 234EH,已知物理地址为25432H, 若(CS)的内容被指定成1A31H,则物理地址应为什么地址号? 解:物理地址=段地址×10H+偏移地址 求偏移地址:25432H-234EH ×10H=1F52H 当(CS)=1A31H时,物理地址为: (CS)×10H+1F52H=1A310H+1F52H=1C262H
第六章
8、设有4K×4位SRAM芯片及8K×8位EPROM芯片,欲与8088 CPU组成16K×8位
的存储空间,请问需用此SRAM或EPROM多少片?它们的片内地址线及片选地
8-18=?-10
[8]补码 0000,1000
[-18]原码 1001,0010
[-18]补码 1110,1110
0000,1000
1110,1110 1111,0110 [10]补码
1000,1010
6.设机器字长为8位,最高位为符号位,试用“双高位”判别法判断下述 二进制运算有没有溢出产生。若有,是正溢出还是负溢出?
表变量ADDRTABL。
0A56H:0005H 46H VAR1
0AH
解:DATA SEGMENT
0A56H:0006H 3CH
07H
VAR1 VAR2
DW 3C46H DW F678H 0A56H:0007H 78H VAR2
00H
VAR3
DW 0059H 0A56H:0008H F6H
56H
ADDRTABL DD VAR1 0A56H:0009H 59H VAR3
0AH
DD VAR2 0A56H:000AH 00H
09H
DD VAR3
00H
DATA ENDS
56H
0AH
第四章课堂作业: 1、交互式程序中用户按下数字键1、2、3,程序转入相应的服务子程序 ONE、TWO、THREE,若按下其他键就继续等待。(程序段) KEY:MOV AH,1
INT 21H CMP AL,’1’ JE ONE CMP AL,’2’ JE TWO CMP AL,’3’ JE THREE JMP KEY ONE:… TWO:… THREE:…
CX≠0循环;
ZF=0且CX≠0循环; ZF=1且CX≠0循环;
指令执行后,AX =? BX =? CX =? DX =?
程序段如下:
ORG 0200H
MOV AX,10H (AX)=10H
MOV BX,20H (BX)=20H
MOV CX,04H (CX)=04H
MOV DX,03H
LLL:INC AX
1010,0111
CF 1,ZF 0,SF 1,PF 1,AF 1 1110,1101
1,0001,0101,0000,0000 Cs 1,C p 1,无溢出,OF 0 CF 1,ZF 0,SF 0,PF 1,AF 0
Cs 1,C p 1,无溢出,OF 0 CF 1,ZF 0,SF 0,PF 1,AF 1
50000H~6FFFFH、70000H~8FFFFH
第六章
8、设有4K×4位SRAM芯片及8K×8位EPROM芯片,欲与8088 CPU组成16K×8位
的存储空间,请问需用此SRAM或EPROM多少片?它们的片内地址线及片选地
址线分别是哪几根?假设该16K×8位存储空间连续,且末地址为FFFFFH,请
=10000H+217-1 0001,0000,0000,0000,0000B +0010,0000,0000,0000,0000B 0011,0000,0000,0000,0000B -0000,0000,0000,0000,0001B 0010,1111,1111,1111,1111B =2FFFFH 则4个模块的首末地址分别为:10000H~2FFFFH、30000H~4FFFFH、
(1) 01111001B
(2) 10000011B
BCD码为0111,1001B 十进制数为79 二进制数为0100,1111B
第二章
5、若已知一个字串的起始逻辑地址为2000H:1000H,试求该
字串中第16个字的逻辑地址及物理地址。 2000H:1000H 1
解:
2000H:1001H 1
物理地址=段地址×10H+偏移地址
6.有如下程序: MOV AL,45H ADD AL,71H DAA 加法调整指令P100 MOV BL,AL MOV AL,19H ADC AL,12H DAA 加法调整指令P100 MOV BH,AL 执行后,BX =?标志位PF =?CF =?
45H
+71H
B6H
+60H
16H
CF=1,(BL)=16H
2000H:1002H 2
起始逻辑地址为2000H:1000H
2000H:1003H 2
第n个字的逻辑地址为
2000H:1004H 3
段地址:偏移地址首址+(n-1)×2
2000H:1005H 3
第16个字的逻辑地址为

段地址:偏移地址首址+(16-1)×2=2000H:101EH
物理地址为:2000 ×10H +101E=2101EH
210=1K
24=16
(2)需要64个RAM芯片,64个芯片组,13根片内地址线、6根片选地址线。
213=8K
26=64
第六章
7、某微机系统的RAM存储器由4个模块组成,每个模块的容量为128 KB,若
4个模块的地址连续,起始地址为10000H,则每个模块的首末地址是什么? 解:末地址-首地址+1=容量 末地址=首地址+容量-1
[-70]补码 1011,1010 1010,0110
1101,1011 1011,1010
cs 1,c p 1,无溢出 1100,0110 [70]原码
1011,1010 10110,0000 cs 1,c p 0,负溢出 0110,0000 [96]原码
10、将下列8421 BCD码表示成十进制数和二进制数:
7、 试判断下列运算执行之后,OF、CF、ZF、SF、PF和AF的状态: OF:溢出标志、CF:进位标志、ZF:零标志、SF:符号标志、 PF:奇偶标志(低8位1的个数为偶数,则置1,否则置0)、 AF:辅助进位标志(第3位有进位或借位,则置1,否则置0)
(3)46H 59H 0100,0110
1… 1
FF000H~FFFFFH
1、 1、 1、 1、 1、 1、 1、 0、 0… 0 1… 1
1、 1、 1、 1、 1、 1、 0、 1、 0… 0 1… 1
1、 1、 1、 1、 1、 1、 0、 0、 0… 0 1… 1
FE000H~FEFFFH FD000H~FDFFFH FC000H~FCFFFH
串传送指令:MOVSB(字节) (ES):(DI)← (DS):(SI), (SI)← (SI)±1, (DI)← (DI)±1
7.设有3个字变量的变量名及其内容如下:
VAR1 3C46H
VAR2 F678H
0A56H:000BH 05H
VAR3 0059H
P127
00H
试设计一个数据段定义这3个变量及其地址(包括段地址和偏移地址) 56H
ADD BX,BX
SHR DX,1
(
)
HLT
(DX)=03H=0000,0011B
(AX)=11H (AX)=12H (AX)=13H
(BX)=40H (BX)=80H (BX)=0100H
(DX)=01H (DX)=00H (DX)=00H
(CX)=03H (CX)=02H (CX)=01H


LOOPZ LLL LOOPNZ LLL
第五章 1、已知8086 CPU中当前段寄存器的基址(DS) = 021FH,(ES) = 0A32H, (CS) = 234EH,则上述各段在存储器空间中物理地址的首地址号及末地 址号是什么? 解:各段首地址为: 数据段:(DS)×10H+0000H=021F0H 附加段:(ES)×10H+0000H=0A320H 代码段:(CS)×10H+0000H=234E0H 各段末地址为: 数据段:(DS)×10H+0FFFFH=121EFH 附加段:(ES)×10H+0FFFFH=1A31FH 代码段:(CS)×10H+0FFFFH=334DFH

Байду номын сангаас16
16
6、若已知当前栈顶的逻辑地址为3000H:0200H,试问压入两个 字后栈顶的逻辑地址和物理地址是什么? 若又弹出3个字后, 则栈顶的逻辑地址和物理地址又是什么? 解:压入两个字后,SP的内容为 (SP)-字数×2=0200H-2×2=01FCH 所以逻辑地址为3000H:01FCH 物理地址为301FCH
19H
+01H
+12H
2CH
+06H
32H CF=0,(BH)=32H
(BX)=3216H
16H=00010110B
PF=0
7、 执行下列程序段,指出此程序段功能。
(1) MOV CX,10
LEA SI,First LEA DI,Second
1)将源串FIRST的10个字节 搬移至目标串SECOND
相关文档
最新文档