微机原理作业答案
- 格式:doc
- 大小:63.00 KB
- 文档页数:7
《微机原理》作业答案
第一章
1.2.什么是逻辑地址?什么是物理地址?它们各自如何表示?如何转换?
程序中使用的存储器地址称为逻辑地址,由16位“段基址”和16位“偏移地址”(段内地址)组成。段基址表示一个段的起始地址的高16位。偏移地址表示段内的一个单元距离段开始位置的距离。访问存储器的实际地址称为物理地址,用20位二进制表示。将两个16位二进制表示的逻辑地址错位相加,可以得到20位的物理地址:
物理地址=段基址×16 + 偏移地址
1.5. 按照传输方向和电气特性划分,CPU引脚信号有几种类型?各适用于什么场合?
CPU引脚传输的信号按照传输方向划分,有以下几种类型:
输出:信号从CPU向外部传送;
输入:信号从外部送入CPU;
双向:信号有时从外部送入CPU,有时从CPU向外部传送。
双向信号主要用于数据信号的传输;输出信号用于传输地址信号和一些控制信号;输入信号主要用于传输外部的状态信号(例如READY)和请求(中断、DMA)信号。
三态信号:除了高电平、低电平两种状态之外,CPU内部还可以通过一个大的电阻阻断内外信号的传送,CPU内部的状态与外部相互隔离,也称为“悬浮态”。CPU放弃总线控制权,允许其他设备使用总线时,将相关信号置为“悬浮态”。
1.9. 什么是时钟周期、总线周期、指令周期?它们的时间长短取决于哪些因素?
时钟周期:CPU连接的系统主时钟CLK一个周期的时间。CLK信号频率越高,时钟周期越短。
总线周期:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程称为总线周期。8086CPU总线周期一般由四个时钟周期组成,存储器/IO设备(接口)速度不能满足CPU要求时,可以增加一个或多个时钟周期。
指令周期:CPU执行一条指令的时间(包括取指令和执行该指令所需的全部时间)称为指令周期。指令周期的时间主要取决于主时钟的频率和指令的复杂程度,它也受到存储器或IO设备接口工作速度的影响。
10. 在一次最小模式总线读周期中,8086CPU先后发出了哪些信号?各有什么用处?
T1状态:指出CPU是从内存(1)还是从IO端口(0)读取数据。随后CPU从地址/状态复用线(A19/S6~A16/S3)和地址/数据复用线(AD15~AD0)上发出读取存储器的20位地址,对IO端口访问时从AD15~AD0上发出16位地址。
为了锁存地址,CPU在T1状态从ALE引脚输出一个正脉冲作为地址锁存信号。
如果需要读取高8位数据线上的数据(奇地址/读取一个字),= 0。
为了控制总线收发器8286数据传输方向,= 0。
T2状态:读信号开始变为低电平(有效),=0,用来开放总线收发器8286。
T3状态: CPU检测READY引脚信号。若READY为高电平(有效),表示存储器或I/O端口已经准备好数据,进入T4状态;若READY为低电平(无效),表示存储器或I/O
1EH
30H
41H
42H
43H
0FFH
00H
0CAH
0FFH
00H
0FEH
0FFH
44H
43H 0020H
002EH X Y
端口尚未准备好数据,插入一个或多个TW状态,直到READY变为高电平。
T4状态:在T3(TW)和T4状态交界的下降沿处,CPU对数据总线上的数据进行采样,完成读取数据的操作。
第二章
2.3. 已知一个SRAM芯片的容量为8K×8b,该芯片有一个片选信号引脚和一个读/写控制引脚,问该芯片至少有多少个引脚?地址线多少条?数据线多少条?
根据存储芯片地址线数量计算公式,k=log2(1024*8)= log2(213)=13,即总计有13根地址线。另有8根数据线、2根电源线。所以该芯片至少有25(=13+8+1+1+2)根引脚。
第三章
3.3. 用8位补码完成下列运算,用二进制“真值”的格式给出运算结果,并指出运算后CF、OF、ZF、SF、PF标志位的状态。
(2)126-127
解:(2)126-127
[126]补=0111 1110,[-127]补=1000 0001,
[126-127]补=1111 1111,[126-127]=-000 0001
COZSP=10011
3.5某数据段内有如下数据定义:
X db 30, 30H, ‘ABC’, 2-3, ?, 11001010B
dw 0FFH,-2, “CD”
Y dd 20 dup(15, 3 dup(?), 0)
Z db 3 dup(?)
W dw Z-X
假设变量X的偏移地址为20H。
(1)写出变量X各数据在内存中的具体位置和相关内存单元的值。
(2)写出变量Y,Z的偏移地址。
(3)写出变量W的值
答:(1)变量X各数据在内存中的具体位置和相关内存单元的值如右图。
变量Y的偏移地址为002EH;
变量Z的偏移地址为002EH+4×5×20=01BEH
变量W的值等于变量Z和X偏移地址之差
01BEH-0020H=019EH
它等于变量X、Y所占用内存单元的字节数。
3.9. 下面两条指令的功能有什么区别?
MOV AX, BX
MOV AX, [BX]
答:指令“MOV AX, BX”把BX寄存器的内容装入到AX中。
指令“MOV AX, [BX]”把内存储器一个字的内容装入AX寄存器。该字的段基址在DS中,偏移地址在BX中。