1.2解答:⏹微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统⏹PC机:PC(Personal Computer)机就是面向个人单独使用的一类微机⏹单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等。
⏹数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用1.4解答:⏹系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换⏹好处:组态灵活、扩展方便⏹三组信号线:数据总线、地址总线和控制总线⏹其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号。
1.5解答:⏹用于数值计算、数据处理及信息管理方向⏹采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段。
⏹用于过程控制及嵌人应用方向⏹采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电。
1.8解答:⏹BIOS:基本输入输出系统⏹主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备4.1解答:⏹8088具有20 根地址线。
在访问内存时使用地址A0~A19 ,可直接寻址1MB 容量的内存范围;在访问外设时使用地址线A0~A15 ,共能寻址64K 个输入输出端口。
实际上,PC/XT在寻址外设时,只使用地址线A0~A9 ;若A9=1,说明它要寻址的I/O端口位于I/O通道。
4.2解答:⏹总线操作指的是指发生在总线上的某些特定的操作,而总线周期指的是CPU通过总线操作与外界(存储器和I/O端口)进行一次数据交换的过程(时间),8088典型的总线周期由4 个T组成。
如果8088的CLK引脚接5MHz的时钟信号,那么每个T状态的持续时间为200ns 。
4.4解答:⏹当8088进行读写存储器或I/O接口时,如果存储器或I/O接口无法满足CPU的读写时序(来不及提供或读取数据时),需要CPU插入等待状态Tw。
⏹在读写总线周期的T3和T4之间插入Tw。
4.6解答:⏹三态:引脚除正常的高、低电平外,还能输出高阻状态。
⏹输出高阻状态时,表示芯片实际上已放弃了对该引脚的控制,使之“悬空”,这样他所连接的设备就可以接管对该引脚所连导线的控制。
8088最小组态具有三态能力的引脚:⏹A19/S6~A16/S3、A15~A8、AD7~AD0⏹IO/M* 、RD*、WR*、ALE⏹DEN*、DT/R*4.7解答:⏹RESET:复位请求。
有效时,将使CPU回到其初始状态。
⏹HOLD:总线保持。
有效时,表示总线请求设备向CPU申请占有总线。
⏹NMI:不可屏蔽中断请求。
有效时,表示外界向CPU申请不可屏蔽中断。
⏹INTR:可屏蔽中断请求。
有效时,表示请求设备向CPU申请可屏蔽中断。
4.13解答:⏹8088每个总线周期只能读写一个字节数据。
所以读取指令长度为3B的指令“ADD[2000H], AX”需要3 个时钟周期,执行时需要2 个时钟周期。
⏹读取指令是存储器读总线周期,执行时是存储器写总线周期?5.2解答:⏹在半导体存储器中,RAM指的是随机存取存储器,他可读可写,但断电后信息一般会丢失;而ROM指的是只读存储器,正常工作时只能从中读取信息,但断电后信息不会丢失。
以EPROM芯片2764为例,其存储容量为8K×8位,共有8 条数据线和13 条地址线。
用它组成64KB的ROM存储区共需8 片2764芯片。
5.7问题:⏹什么是存储器连接中的“位扩充”和“地址扩充”?⏹欲组成32KB的RAM存储区,在采用容量1K×4位的静态RAM芯片或容量16K×1位的静态RAM芯片的情况下,各需要多少芯片?⏹在位方向和地址方向上各要进行什么样的扩充?请画出采用2114芯片时的连接示意图。
⏹位扩充——存储器芯片数据位数小于主机数据线数时,利用多个存储器芯片在数据“位”方向的扩充;⏹地址扩充(字扩充)——当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“地址”方向的扩充⏹组成32KB存储空间,用SRAM 2114(1K×4)需要64个芯片;⏹组成32KB存储空间,用DRAM 4116(16K×1)需要16个芯片;⏹它们都需要进行位扩充和地址扩充5.8问题:⏹ 存储芯片为什么要设置片选信号? ⏹ 它与系统地址总线有哪些连接方式? ⏹ 采用何种连接方式可避免地址重复?⏹ 采用哪些连接方式可节省用于译码的硬件? 解答:⏹ 片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间⏹ 存储器片选信号通常与CPU 地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式⏹ 采用全译码方式可以避免地址重复 ⏹ 采用部分或线选译码可以节省译码硬件 5.9题目:⏹ 在一个针对存储器的译码系统中,如果有4个地址线未参与译码,那么每个存储单元会同时拥有几个地址?解答:⏹ 24=16 5.10问题:⏹ 请写出图5.32中4个存储芯片各自的可用地址范围,并指明其重复地址。
解答1:A19~ A16A15~ A13A12~A0一个可用地址习题5.72114(1) A 9~A 0 I/O 4~I/O 1片选1D 3~D 0D 7~D 4 A 9~A 0 CE2114(2) 2114(63) A 9~A 0 I/O 4~I/O 1CE2114(64) …片选32…5.11问题:⏹利用6264芯片(容量8K×8位的SRAM),采用全译码方式,在8088系统的内存区段40000H~43FFFH扩充RAM区⏹请画出这些芯片与8088最大组态下形成的系统总线的连接示意图。
解答:20100001全0~全142000H~43FFFH5-13问题:⏹利用2764 芯片(容量8K×8位的EPROM),采用74LS138进行全译码,在8088系统的最高地址区组成32KB的ROM区域⏹请画出各2764芯片与8088最大组态下形成的系统总线的连接示意图解答:A19~A16A15~A13A12~A0地址1 2 3 41111111111111111100101110111全0~全1全0~全1全0~全1全0~全1F8000H~F9FFFHFA000H~FBFFFHFC000H~FDFFFHFE000H~FFFFFHA12~A0138A18A15A14CBE3E2E1Y0A19A17D7~D0(1)6264CS1WE OEMEMWMEMR(2)6264CS1WE OEY3Y2Y1+5VCS2CS2习题5.11图6.2问题:• 一般的I/O 接口电路安排有哪三类寄存器?他们各自的作用是什么? 解答:⑴ 数据寄存器⏹ 保存外设给CPU 和CPU 发往外设的数据⑵ 状态寄存器⏹ 保存外设或接口电路的状态⑶ 控制寄存器⏹ 保存CPU 给外设或接口电路的命令6.4问题:• 参看图6.4,编程实现以下操作:当K0键单独按下时,发光二极管LED0~LED7将依次点亮,每个维持200ms ;当K1键单独按下时,发光二极管LED0~LED7将反向依次点亮,每个也维持200ms ;其他情况下LED 不点亮(设已有延时200ms 的子程序DELAY 可直接调用) 解答:again: mov dx,8000h in al,dx cmp al,0feh ;D7~D0=11111110B ? jz next1 ;单独按下K0,转移到next1 cmp al,0fdh ;D7~D0=11111101B ? jz next2 ;单独按下K1,转移到next2 jmp again ;其它情况不点亮next1: mov cx,8习题5.13图A 12~A 0 138A 19 A 15 A 14 CBE3 E2 E1 Y7A 18A 17D 7~D 0 2764(1) CE OEMEMRY4Y5Y6 2764(2) CE OE2764(3) CE OE2764(4)CEOEmov al,1 ;从K0开始next11: out dx,al ;某个LED电亮all delay ;延时200msshl al,1 rol al,1oop next11jmp againnext2: mov cx,8mov al,80h ;从K7开始next21: out dx,al ;某个LED电亮call delay ;延时200msshr al,1 ;ror al,1loop next21jmp again6.5问题:•CPU与外设采用查询方式传送数据的过程是怎样的?现有一输入设备,其数据端口的地址为FFE0H ,并于端口FFE2H提供状态,当其D0位为1时表明输入数据备好。
请编写采用查询方式进行数据传送的程序段,要求从该设备读取100个字节并输入到从2000H:2000H开始的内存中,注意在程序中加上注释。
•解答•通过读取状态寄存器的标志位来检查外设是否就绪。
若不就绪就继续查询,即程序不断循环;直至就绪。
然后,进行下一步的传送工作。
mov bx,2000hmov ds,bxmov cx,100again: mov dx,0ffe2hstatus: in al,dx ;查询一次test al,01hjz statusmov dx,0ffe0hin al,dx ;输入一个字节mov [bx],alinc bxloop again ;循环,输入100个字节6.9问题:•按照图6-12所示的中断查询接口与相应的流程图,请编写用于中断服务的程序段。
具体要求是,当程序查到中断设备0有中断请求(对应数据线D0),它将调用名为PROC0的子程序;如此,依次去查中断设备1~中断设备3,并分别调用名为PROC1~PROC3的子程序。
stipush axpush dx……mov dx,8001hstatus: in al,dxtest al,01hjnz service0test al,02hjnz service1test al,04hjnz service2test al,08hjnz service3……service0: call proc0jmp doneservice1: call proc1jmp doneservice2: call proc2jmp doneservice3: call proc3jmp done……done: pop dxpop axiret6.10解答:⏹DMA的意思是直接存储器存取,主要用于高速外设和内存间的数据传送。