微机原理作业答案

  • 格式:doc
  • 大小:63.00 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《微机原理》作业答案

第一章

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中。