ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:322.26KB ,
资源ID:23469862      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23469862.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理 汇编语言及接口技术 答案.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理 汇编语言及接口技术 答案.docx

1、微机原理 汇编语言及接口技术 答案题1.2 参考p.2和p.51.9 参考p.13-141.11 (1)174.66 D = 10101110.10101000 B = 0AE.A8 H (0AE.A9H / 0AE.A8F5C2H) (2)100011101011.01011 B = 8EB.58 H = 2283.34375 D (3)F18A6.6 H = 11110001100010100110.0110 B = 989350.375 D1.12解:八位机器数原码、反码、 补码、 移码 +37 00100101 00100101 00100101 10100101 25H 25H 25

2、H 0A5H -37 10100101 11011010 11011011 01011011 0A5H 0DAH 0DBH 5BH1.13解:补码机器数扩充为16位和32位形式 +37 0025 H 00000025 H -37 FFDB H FFFFFFDB H1.14 解:46H作为无符号数 = 70 D 46H作为补码 = +70 D 46H作为BCD码 = 46 D 46H作为ASCII码 = F1.19解:英文字母 D和d的ASCII码为44H和64H; 回车CR为0D H、换行LF为0A H; 数码0、空格SP、空操作NUL的ASCII码分别为30H、20H、00H。 2.5题参考

3、p.32 逻辑地址形式为 段地址:偏移地址 物理地址 = 段地址*16+段内偏移地址 1MB空间最多可以分成64K个逻辑段,因为段地址的起始必须是16的倍数,220/24=216=64K个。物理地址为:(1) 0FFFF0H(2)00417H(3)24500H(4)0BC777H2.8 已知DS=2000H,BX=0100H,SI=0002H,存储单元20100H20103H依次存放12H、34H、56H、78H,21200H21203H依次存放2AH、4CH、B7H、65H,说明下列指令执行完后AX寄存器的内容以及源操作数的寻址方式。(1)mov ax, 1200h 答:ax=1200h 立

4、即寻址方式(2)mov ax, bx 答:ax=0100h 寄存器寻址方式(3)mov ax, 1200h 答:ax=21200h=4C2AH 直接寻址方式(4)mov ax, bx 答:ax=20100h=3412H 寄存器间接寻址方式(5)mov ax, bx+1100h 答:ax=21200h=4C2AH 相对寻址方式(6)mov ax, bx+si 答:ax=20102h=7856H 基址变址寻址方式(7)mov ax, bxsi+1100h 答:ax=21202h=65B7H 相对基址变址寻址方式2.9 指出下列指令的错误原因: mov cx, dl ;源操作数长度与目的操作数不一致

5、 mov ip, ax ;ip指令指针不能人为改变,由转移指令或子程 序调用来改变 mov es, 1234h ;立即数不能直接送段寄存器 mov es, ds ;段寄存器之间不能直接传递 mov al, 300 ;源操作数长度超过al寄存器 mov sp, ax ;间接寻址可使用bx或bp,堆栈操作应使用专用 指令, mov ax, bx+di ;源操作数格式错,应该是 bx+di mov 20h, ah ;目的操作数不可以是立即数2.13解:运算公式为 v-(x*y+z-540)/x 结果商存放在ax中,余数在dx中。2.16解:求有效地址(1)EA = 1256H(2)EA = 32F7

6、H2.19解:求首地址为array的20个字的数组的元素之和,结果存放于地址为total的字单元中。-题4.1 参见p.14-15 8088具有 20 根地址线。在访问内存时使用地址 A0A19 ,可直接寻址 1MB 容量的内存范围;在访问外设时使用地址线 A0A15 ,共能寻址 64K 个输入输出端口。 实际上PC/XT在寻址外设时,只使用地址线A9A0;若A91,说明它要寻址的IO端口位于IO插卡上。4.2参见p.106-107 总线操作指的是发生在总线上的某些特定操作,总线周期指的是完成一次特定总线操作所需的时间。对8088而言其典型的总线周期由 4个T状态组成。PC/XT所采用的时钟频

7、率为4.77MHz,每个T状态的持续时间为210ns。如果CLK引脚接5MHz的时钟信号,那么每个T状态的持续时间为200ns。 4.4解答: 当8088进行读写存储器或I/O接口时,如果存储器或I/O接口无法满足CPU的读写时序(来不及提供或读取数据时),需要CPU插入等待状态TW。(在T3前沿检测Ready信号,若无效则插入TW 。) 具体在读写总线周期的T3和T4之间插入TW。4.6参见p.99,p.110 8088的某些输出线有三种状态:高电平、低电平、悬空(高阻态),称为三态能力。在高阻状态,CPU放弃其了对该引脚的控制权,由连接它的设备接管。 具有三态能力的引脚有:AD7AD0,A

8、15A8,A19/S6A16/S3,ALE,IO/M*,WR*,RD*,DEN*,DT/R*。4.11总线周期IO/M*WR*RD*存储器读低高低存储器写低低高I/O读(输入操作)高高低I/O写(输出操作)高低高4.12 答:取该指令时引发存储器读总线操作。执行该指令时引发I/O读总线操作。(时序图略)4.13 8088系统最小组态下,对指令ADD 2000H,AX (长度3B)。答:取该指令时需要3个总线周期,均为存储器读周期。执行该指令时需要4个总线周期,2个为存储器读总线周期(读出字操作数参与运算),2个为存储器写总线周期(保存16位运算结果)。4.15 参见p.106图 74LS373

9、 的G为电平锁存引脚,控制选通且转为无效时锁存数据。OE* 输出允许引脚,信号来自ALE。4.16 参见p.106图数据收发器74LS245 是8位双向缓冲器,G*控制端为低电平有效,可传输数据;DIR控制导通方向:DIR1,AB;DIR0,AB。4.17 参见p.111-112归纳为:1、8086数据总线变为16位,数据地址线复用为AD15AD0。 2、8086指令队列程度变为6字节长,当有2个字节空才取下一指令。 3、8088引脚IO/M* ,8086变为M/IO*;4、引脚SS0* 变为BHE*/S7,BHE* 的作用是使D15D8有效。5、8086存储器组织为奇偶分块,偶地址取字只要读

10、1次,奇地址取字需要读两次。6、I/O端口大都采用偶地址,目的是引导8位数据到低8位总线AD7AD0上,以提高效率。=5.1 Cache、主存和辅存的作用参见 p.120121 虚拟存储器参见p.121 在CPU看来,访问主存和访问辅存有什么不同? 访问主存:通过存储器访问机器指令,按字随机访问。 访问辅存:通过操作系统,按块顺序访问。5.2 在半导体存储器中,RAM指的是 随机存取存储器 ,它可读可写,但断电后信息一般会 丢失 ;而ROM指的是 只读存储器 ,正常工作时只能从中 读取 信息,但断电后信息 不会丢失 。以EPROM芯片2764为例,其存储容量为8K8位,共有 8 条数据线和 1

11、3 条地址线。用它组成64KB的ROM存储区共需 8 片2764芯片。5.4 一个容量为4K4位的假想RAM存储芯片,他应该有多少根地址线引脚和多少根数据线引脚?如果让你来进行设计,那么它还需要哪些控制引脚?这些引脚分别起什么样的控制作用?解答:4K4的芯片应该有12根地址线引脚和4根数据线引脚。控制引脚应该有:读取信号OE*:有效时,表示读取存储单元的数据写入信号WE*:有效时,表示将数据写入存储单元片选信号CS*:有效时,表示选中该芯片,可以进行读写操作。5.7 什么是存储芯片的位扩充和地址扩充?采用静态RAM的芯片2114(1K*4位)或动态RAM的芯片4116(16K*1位)来组成32

12、KB的RAM存储区,请问各需要多少芯片?在位方向和地址方向各需要进行什么样的扩充?解答:(参见p.140) 使用多个芯片来扩充存储数据位的宽度,称为位扩充。采用多个芯片在地址方向上进行扩充,称为地址扩充或字扩充。 用SRAM 2114组成32KBRAM存储区:2片为一组,得1KB,所以组成32KB就要32组,共需要64片SRAM 2114。 用DRAM 4116组成32KBRAM存储区:8片为一组,得16KB,所以组成32KB只要2组,共需要16片DRAM 4116。5.8 存储芯片为什么要设置片选信号?它与系统地址总线有哪些连接方式?采用何种连接方式可避免地址重复?采用哪些连接方式可节省用于

13、译码的硬件?解答:片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间。存储器片选信号通常与CPU地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式。采用全译码方式可以避免地址重复。采用部分或线选译码可以节省译码硬件。5.9 在一个针对存储器的译码系统中,如果有4个地址线未参与译码,那么每个存储单元会同时拥有几个地址?解答: 理论上每个存储单元会同时拥有16个地址。5.10 解答:p.144图5.33中4个存储芯片的可用地址范围:6264(1)6264(2)2732(1)2732(2)00000 01FFFH0200

14、0 03FFFH04000 04FFFH05000 05FFFH40000 41FFFH42000 43FFFH44000 44FFFH45000 45FFFH80000 81FFFH82000 83FFFH84000 84FFFH85000 85FFFHC0000C1FFFHC2000C3FFFHC4000 C4FFFHC5000 C5FFFH重复地址由于A19A18的不定性,每片各有4段范围。5.11采用全译码方式和6264芯片( SRAM,容量8K8位),在内存40000H43FFFH区段扩充RAM,请画出这些芯片与最大组态的系统总线的连接示意图。解: 方法为:容量=末地址首地址+1=2

15、14=16KB,所以要2片6264芯片。 A12A0为片内地址,A15A13作片选译码的输入CBA,A19 A16A15 A13A12A0地址范围1201000100000001全0全1全0全140000H41FFFH42000H43FFFH5.13 采用3:8译码器74LS138和2764芯片(EPROM,8K8位),通过全译码方式在8088系统的地址最高端组成32KB的ROM区,请画出各2764芯片与8088最大组态下形成的线条总线的连接示意图。解答: 注意地址最高端组成32KB的ROM区,意味着地址范围是 F8000HFFFFFH,这样最高五根地址线A19A15上要全为1。2764芯片的

16、片内地址是13根即A12A0,它们是全0到全1变化;现在需要4片来构成32KB存储区,采用3:8译码器的话,A15A13应该取后4种情况,即取100111分别产生Y4Y7。其余地址线可以以多种方式组合产生控制信号。A19 A16A15 A13A12A0地址范围12341111111111111111100101110111全0全1全0全1全0全1全0全1F8000HF9FFFHFA000HFBFFFHFC000HFDFFFHFE000HFFFFFH考虑:如果要求地址从低端开始的话,高5位全0,即00000H07FFFH,如何连接?5.16访问的局部性原则 P122 第1行。高速缓存和虚拟存储的

17、目的 p121下部。=6.1 在80x86系统中,I/O端口的地址采用 独立 编码方式,访问端口时要使用专门的 I/O 指令,有 2 种寻址方式,其具体形式是: 直接寻址和DX间接寻址 。 6.2 一般的I/O接口电路安排有哪三类寄存器?他们各自的作用是什么?解答: (参见p.154) 数据寄存器 保存外设给CPU和CPU发往外设的数据。 状态寄存器 保存外设或接口电路的状态。 控制寄存器 保存CPU给外设或接口电路的命令。6.4 解: K0单独按下:输入0FEH,控制L0 L7 依次循环亮灯, K1单独按下:输入0FDH,控制L7 L0 反向依次循环亮灯, 程序流程略。 BEG: MOV D

18、X,8000H LOP0: IN AL,DX MOV BL,AL MOV CX,8 ;循环次数 CMP AL,0FEH ;测试是否K0单独按下 JZ LOP1 CMP AL,0FDH ;测试是否K1单独按下 JZ LOP2 MOV AL, 0 OUT DX, AL JMP LOP0 ; ;利用状态值0FEH作为开始位置,指向L0 LOP1: MOV AL,BL NOT AL ;因为有反相器LS06 OUT DX,AL CALL DELAY ROL BL,1 ;准备下个灯亮位置 LOOP LOP1 JMP LOP0 ; LOP2: MOV BL,80H ;首次亮L7, LPO3:MOV AL,B

19、L ;为1的灯亮,因为有反相器LS06 OUT DX,AL CALL DELAY ROR BL,1 ;准备下个灯亮位置 LOOP LOP3 JMP LOP06.5 数据口地址为FFE0H,状态口地址为FFE2H,当状态标志D0=1时输入数据就绪,编写查询方式进行数据传送程序,读入100个字节,写到2000H:2000H开始的内存中。解: (程序格式参见p.6364 ) .CODE MOV AX, 2000H MOV DS,AX ;段地址 MOV BX,AX ;偏移地址 MOV CX,100 NEXT:MOV DX,0FFE2H STATUS:IN AL,DX ;读入状态 TEST AL,01H

20、 JZ STATUS DEC DX DEC DX ;数据口地址 IN AL,DX MOV BX,AL INC BX LOOP NEXT MOV AX, 4C00H ;结束 INT 21H 6.6 某字符输出设备,其数据端口和状态端口的地址均为80H。在读取状态时,当标志位D7为0时表明该设备闲,可以接收一个字符。请编写采用查询方式进行数据传送的程序段,要求将存放于符号地址ADDR处的一串字符(以$为结束标志)输出给该设备,注意在程序中加上注释。解:参考答案一: mov bx, offset addragain: mov ah, bx ;取一个字节的字符码 cmp ah, $ jz donest

21、atus: in al, 80h ;查询一次 test al, 80h jnz status mov al, ah out 80h, al ;输出一个字节 inc bx jmp again ;循环done: 参考答案二: .DATA addr DB xxxx$ .CODE MOV AX, DATA MOV DS, AX LEA BX, addr Status: IN AL, 80H ;读入状态,if D7=1,为负数 CMP AL, 0 ;或 ROL AL,1 JS Status ; JC STATUS MOV AL, BX CMP AL, $ JZ endof OUT 80H, AL INC

22、 BX JMP Status Endof: MOV AX, 4C00H INT 21H 6.7 以可屏蔽中断为例,说明一次完整的中断过程主要包括那些环节?8088响应可屏蔽中断请求时需要先满足那些前提条件?答: 中断过程的主要环节:( 参见p.165 ) 中断请求、中断响应、关中断、断点保护、中断源识别、现场保护、中断服务、恢复现场、开中断、中断返回。 8088响应可屏蔽中断请求时需要先满足: 中断允许IF1。 当前指令执行完毕。6.8什么是中断源?为什么要设立中断优先权?什么是中断嵌套?何种情况下程序可能发生中断嵌套?答: 中断源:计算机系统中引起中断的事件或原因。 当多个中断源同时请求时,

23、CPU需要利用中断优先权决定首先响应哪一个;当一个中断正在服务时,又发生了新的中断请求,CPU需要利用中断优先权确定后者是否优先权更高,以便实现中断嵌套。 中断嵌套:当一个中断服务时CPU又响应新的中断请求就形成中断嵌套。 CPU允许中断(开中断)、新的中断请求比正在服务的中断优先权更高,通常发生中断嵌套。6.9参见P.171 STI PUSH DX PUSH AX MOV DX,8001H STATUS:IN AL,DX TEST AL,01H JZ NEXT1 CALL PROC0 JMP DONESNEXT1: TEST AL,02H JZ NEXT2 CALL PROC1 JMP DO

24、NES NEXT2: TEST AL,04H JZ NEXT3 CALL PROC2 JMP DONES NEXT3: TEST AL,08H JZ DONES CALL PROC3 DONES: POP AX POP DX IRET6.10 DMA的意思是 直接存储器存取 ,主要用于高速外设和内存间的数据传送。进行DMA传送的一般过程是:外设先向DMA控制器提出 DMA传送请求 ,DMA控制器通过 HOLD 信号有效向CPU提出总线请求,CPU回以 HLDA 信号有效表示响应。此时CPU的三态信号线将输出 高阻 状态,即将它们交由 DMAC(DMA控制器) 进行控制,完成外设和内存间的直接数

25、据传送。7.7 假如某并行总线的数据宽度为32位,工作频率为100MHz,若2个时钟周期传送一次数据,其传输速率是多少?如果在时钟的前后沿各传送一次数据,其传输速率是多少?如果采用2-1-1-1的突发传送模式,其平均传输速率是多少?解答: f =100MHz ,则时钟周期T=1/f =10 ns1) 2T一次的传输速率,即频率减半:fd = (32/8) * 100/2 M = 200 MB/s 或 fd = (32/8) / (2*10 ns) = 200 MB/s2) 前后沿各传送一次,即频率加倍:fd = (32/8) * 100*2 M = 800 MB/s 或即1T2次:fd = (

26、32/8) / (10/2 ns) = 800 MB/s3) 采用2-1-1-1的突发传送模式,平均为5T4次: fd = (32/8) * 100*4/5 M = 320 MB/s 或 fd = (32/8) /(5*10 ns /4) = 320 MB/s=8.1 8088CPU具有哪些中断类型?各种中断如何产生,如何得到中断向量号? 参见p.191、p.1921938.2 8088中断向量表的作用是什么?(参见p.194)答: 它是中断向量号到对应的中断服务程序入口地址的链接表。 通过中断向量号n,可以读取中断向量表的物理地址为 n*4 开始的单元,获取中断服务程序的入口地址(即中断向量

27、),长度4个字节。8.3 说明程序段的功能: (程序略,见p.212 上)答: 此段程序将中断服务程序intproc的入口地址写入中断向量表的80h*4开始的单元中。 (stows 是数据串传送指令,参见p.78。) (实际上可以使用指令序列: mov ax,seg intproc mov ds,ax mov dx,offset intproc mov ax,2580h int 21h 来完成相同功能)8.4 8259A中IRR、IMR和ISR三个寄存器的作用是什么?答: ( 参见p.196197 ) 中断请求寄存器IRR 保存8条外界中断请求信号IR0IR7的请求状态 Di位为1表示IRi引

28、脚有中断请求;为0表示无请求 中断服务寄存器ISR 保存正在被8259A服务着的中断状态 Di位为1表示IRi中断正在服务中;为0表示没有被服务 中断屏蔽寄存器IMR 保存对中断请求信号IR的屏蔽状态 Di位为1表示IRi中断被屏蔽(禁止);为0表示允许8.5 PC/XT对8259A的初始化程序如下: mov al,13h ;0001 0011 out 20h,al ;ICW1 mov al,08h ;00001000 out 21h,al ;ICW2 mov al,09h ;00001001 out 21h,al ;ICW4 请说明其设定的工作方式?解答: 从第一个写指令ICW1,看出是边沿触发、单片方式,有ICW4;第二个写指令ICW2为中断向量08h;第三个写指令ICW4中断方式字,表示普通全嵌套、数据线缓冲方式,从片、非自动中断结束、16位微处理器。8.6 某时刻8259A的IRR内

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1