ST2 M→MDR→C DT1 R0→D
ET0 C OR D→Z ET1 Z→R0 (5)EOR -(R2) , R1
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ST0 R1→C DT0 R2-1→Z
DT1 Z→MAR , R2 DT2 M→MDR→D ET0 C EOR D→Z ET1 Z→MDR ET2 MDR→M (6)INC -(R2)
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT0 R2-1→Z
DT1 Z→MAR , R2 DT2 M→MDR→D ET0 INC D→Z ET1 Z→MDR ET2 MDR→M (7)DEC (R1)
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT0 R1→MAR DT1 M→MDR→D ET0 DEC D→Z ET1 Z→MDR ET2 MDR→M (8)COM (R0)+
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT0 R0→MAR DT1 M→MDR→D DT2 R0+1→Z DT3 Z→R0
ET0 COM D→Z ET1 Z→MDR ET2 MDR→M (9)NEG DI
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT0 PC→MAR
DT1 M→MDR→MAR , PC+1→PC
13 / 42
DT2 M→MDR→D ET0 NEG D→Z ET1 Z→MDR ET2 MDR→M (10)SAL R1
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT1 R1→D
ET0 SAL D→Z ET1 Z→R1 (11)SAR R2
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC DT1 R2→D
ET0 SAR D→Z ET1 Z→R2
14.拟出下述程序的读取与执行过程: (1)JMP R1
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ET0 R1→PC (2)JMP (R0)
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ET0 R0→MAR ET1 M→MDR→PC (3)JMP X(PC)
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ST0 PC→MAR
ST1 M→MDR→D ST2 D+PC→Z ST3 Z→PC (4)RST (SP)+
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ET0 SP→PC
ET1 M→MDR→PC ET2 SP+1→Z ET3 Z→PC (5)JSR R0
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ST0 R0→C ET0 SP-1→Z
ET1 Z→MAR , SP
/ 42
14 ET2 PC→MDR ET3 MDR→M ET4 C→PC (6)JSR (R3)
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC STO R3→MAR ST1 M→MDR→C ET0 SP-1→Z
ET1 Z→MAR , SP ET2 PC→MDR ET3 MDR→M ET4 C→PC (7)JSR (R2)+
解: FT0 PC→MAR
FT1 M→MDR→IR,PC+1→PC ST0 R2→MAR ST1 M→MDR→C ST2 R2+1→Z ST3 Z→R2 ET0 SP-1→Z ET1 Z→MAR , SP ET2 PC→MDR ET3 MDR→M ET4 C→PC
第4章 习题四
3. 在8086/8088CPU中,分别进行下列8位二进制数的运算后,标志寄存器中OF、ZF、SF、CF的值各是多少?
(1)10101011+01010101
结果, OF=0 , ZF=1 , SF=0 , CF=1
(2)11011010+11101101
15 / 42
(3)01010101 – 001111110
(4) 10110011– 01100010
4. 在002B0H和002B3H字单元中,分别存放了2个16位字2C53H和1F0EH, 试用图表示它们在存储器中的存储情况。 答案:
5. 试说明段基址和段基值的不同之处。
答:一个段起始单元的地址称为段基址(20位),其低4位必须位0(可被16整除)。 段基址的高16位称为段基值,它保存在段寄存器CS、DS、SS、ES中。
6. 试说明8086/8088主存储器的逻辑地址由哪两部分组成。 答:逻辑地址:段基值:偏移量
7. 设某一存储单元的物理地址是34567H,试完成下列不同的逻辑地址表示。 (1) 3456H:0007H (2)3400H:0567H
8. 假设某个程序装入主存后,(SS)= 0500H,(SP)= 64H,试计算该程序的堆栈栈底的物理地址。 解:SP的内容为栈顶单元相对堆栈段段基址的字节距离(偏移量)。当SP初始化时,其值为栈顶的长度(这时SP指向栈底+2单元)。所以堆栈栈底的物理地址为: 0500H×10H+64H-2 =05062H
16 / 42