微机原理与接口技术完整版答案.docx

上传人:小飞机 文档编号:5285980 上传时间:2023-06-22 格式:DOCX 页数:13 大小:117.08KB
返回 下载 相关 举报
微机原理与接口技术完整版答案.docx_第1页
第1页 / 共13页
微机原理与接口技术完整版答案.docx_第2页
第2页 / 共13页
微机原理与接口技术完整版答案.docx_第3页
第3页 / 共13页
微机原理与接口技术完整版答案.docx_第4页
第4页 / 共13页
微机原理与接口技术完整版答案.docx_第5页
第5页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《微机原理与接口技术完整版答案.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术完整版答案.docx(13页珍藏版)》请在三一办公上搜索。

1、课后答案:2.1将下列十进制数分别转换为二进制数、八进制数、十六进制数。 128D=10000000B=200O=80H1024D=10000000000B=2000O=400H0.47D=0.01111000B=0.36O=0.78H 625D=1001110001B=1161O=271H 67.544D=1000011.1000B=103.4264O=43.8BH2.2将下列二进制数转换成十进制数。10110.001B=22.125D 11000.0101B =24.3125D2.3将下列二进制数分别转换为八进制数、十六进制数。1100010B=142O=62H101110.1001B=5

2、6.44O=2E.9H0.1011101B=0.564O=0.BAH2.4写出下列用补码表示的二进制数的真值。01110011 01110011 +11500011101 - 00011101 - +29 10010101 11101011 107 11111110 - 10000010 - 2 10000001 - 11111111 - 1272.6写出下列十进制数的BCD码表示形式。456=(0100 0101 0110)BCD 789=(0111 1000 1001)BCD 123=(0001 0010 0011)BCD3.1 8086CPU由几部分组成?它们的主要功能是什么?答:从功能

3、上讲,8086分为两部分,即总线接口部件BIU (Bus Interface Unit)和执 行部件 EU (Execution Unit)。BIU是CPU与外部存储器及I/O的接口,负责与存储器和I / 0系统进行数据交换。 指令执行部件EU完成指令译码和执行指令的工作。3.2 8086有多少根地址线?可直接寻址多大容量的内存空间?答:8086CPU有16根数据线和20根地址线,直接寻址空间为220,即为1M字节。3.3 8086内部的寄存器由哪几种类型组成?各自的作用是什么?答:8086CPU内部有14个16位寄存器,可以分为以下三组:分别是通用寄存器组,段 寄存器组,控制寄存器。通用寄存

4、器组可以分为两组:数据寄存器和地址指针与变址寄存器。数据寄存器主要用来保存算术、逻辑运算的操作数、中间结果和地址。地址指针与变址寄存器主要用于存放或指示操作数的偏移地址。段寄存器组:8086 / 8088CPU内部设置了 4个16位段寄存器,它们分别是代码段寄存器 CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES,由它们给出相应逻辑段的首地 址,称为“段基址”。控制寄存器:含指令指针IP及标志位寄存器FR。IP用来存放将要执行的下一条指令在现行代码段中的偏移地址。标志寄存器FR用来存放运算结果的特征3.5 8086的存储器采用什么结构?答:8086的存储器采用分体结构。1M的存储空间

5、分成两个存储体:偶地址存储体和奇地 址存储体,各为512K字节。3.7 8086系统中的堆栈操作是按什么原则进行的?答:堆栈操作的原则是后进先出。4.3存储器的地址译码有几种方式?各自的特点是什么?答:常用的存储器地址译码有两种方式,即单译码和双译码方式。单译码方式是一个“N中取1”的译码器,译码器输出驱动N根字线中的一根,每根字线 由M位组成。若某根字线被选中,则对应此线上的M位信号便同时被读出或写入,经输出缓 冲放大器输出或输入一个M位的字。主要用于小容量的存储器。双译码方式采用的是两级译码电路。当字选择线的根数N很大时,N=2p中的p必然也大, 这时可将p分成两部分,如:N=2p=2q+

6、r=2qX2r=XXY,这样便将对N的译码分别由X译码和 Y译码两部分完成。从而大大减少了选择线的数目。4.4某RAM芯片的存储容量为1024X8位,该芯片的外部引脚应有几条地址线?几条数 据线?若已知某RAM芯片引脚中有13条地址线,8条数据线,那么该芯片的存储容量是多少?答:该芯片的外部引脚应有10条地址线,8条数据线。RAM芯片引脚中有13条地址线,8条数据线,那么该芯片的存储容量是8KX8位。4.5用Intel 2114 1KX4位的RAM芯片组成32KX8位的存储器,需要多少块这样的芯 片?答:需要64块。注:扩展时需要的芯片数量可以这样计算:要构成一个容量为MXN位的存储器,若使

7、用pXk位的芯片(p虬kN),则构成这个存储器需要(M/p ) X ( N/k )个这样的存储器 芯片o4.6利用2764芯片(EPROM,8KX8位)并采用74LS138译码器进行全译码,在8086系 统的最高地址区组成32KB的ROM,请画出这些芯片与系统总线连接的示意图。74LS138-Y4-Y5-YY7 G1 - & - G2 c B ACE I CE | CE J CE2764(1)2764 (2)2764 (3)2764(4)1205.1试出指令MOV BX, 3040H和MOV BX, 3040H有什么不同?1、寻址方式不同:立即数寻址和直接寻址。2、运行结果不同:MOV BX,

8、 3040H; BX=3040HMOV BX,3040H;将 DS 段 3040H 和 3041H 的内容送 BX5.2指出下列指令是否有错,并说明理由。(1)MOVDI, SI;错,内存单兀之间不能直接进行数据传送(2)MOVCS,AX;错,CS不能做目的操作数(3)MOV1200, AX;错,立即数不能做目的操作数(4)MOVDS,CS;错,段寄存器之间不能互相传送(5)PUSHFLAG;对(6)POPCS;错,CS不能做目的操作数(7)MOVCL,AX;错,源、目的操作数长度不一致(8)MOV5000H, 1000H;错,内存单兀之间不能直接进行数据传送5.3在8086中,堆栈操作是字操

9、作还是字节操作?已知SS=1050H,SP=0006H,AX=1234H, 若对AX执行压栈操作(即执行PUSH AX);试问AX的内容存放在何处?答:堆栈操作是字操作。入栈时“先减后压”(SP先减2,再压入操作数),执行压栈操作后AL的内容存放在 10504H,AH的内容存放在10505H。5.4假如要从200中减去AL中的内容,用SUB 200,AL对吗?如果不对,应采用什么方 法?答:不对,立即数不能作为目的操作数。先把立即数传送到一个存储器或寄存器当中。例如:MOVBL,200SUBBL,AL或.:NEGALADDAL,2005.5编程求AX累加器和BX寄存器中两个无符号数之差的绝对值

10、,结果放内存(2800H)单元中。解:CMPAX,BXCMP AX , BXCLCJAPT1JA PT1SUBAX , BXSUBBX,AXXCHG AX , BXJC PT1MOVDX,2800HPT1:SUB AX , BXMOVDI , 2800HMOVDX,BXMOV 2800H , AXMOVDI , AXHLTHLTHLTPT1:SUBAX,BXPT1:SUBBX ,AXMOVDX,2800HMOVDI ,2800HMOVDX,AXMOVDI , BXHLTHLT5.6若有两个4字节的无符号数相加,这两个数分别存放在2000H和3000H开始的存储 单元,将所求的和存放在2000H

11、开始的内存单元中,试编制程序。MOVDI ,2000HLEASI ,3000HMOVAX ,DIMOVDX ,DI+2ADDAX ,SIADCDX ,SI+2MOVDI,AXMOVDI+2,DX5.7用两种方法写出从88H端口读入信息的指令,再用两种方法写出从44H端口输出数 据56H的指令。方法-一:IN AL , 88H方法二:MOV DX , 0088HIN AX , DXMOVAL , 56HMOV AL ,56H6.12OUT44H , AL指出以下四条指令的作用MOV DX ,0044HOUT DX , AL(HEX为数据段的一个变量名)MOV BX, HEX;将变量HEX的内容传

12、送到BX寄存器LEA BX, HEX;取变量HEX的偏移地址送BXMOV BX, OFFSEG HEX;BX指向变量HEX的偏移地址MOV BX, SEG HEX;将变量HEX所在段的段地址传送到BX6.13下面是变量定义伪指令,DATASEGMENTBUFDW3 DUP(5,2 DUP(8)CEDDBWelcome to you , ODH , OAH , $ADDRDWBUFCOUNT EQU $-CEDDATA ENDS问: 按内存单元存放的先后次序,按字节写出数据段中的数据。05H, 00H, 08H, 00H, 08H, 00H,05H,00H,08H, 00H,08H,00H,05

13、H,00H,08H, 00H,08H,00H,57H,65H,6CH, 63H,6FH,6DH, 65H, 20H,74H, 6FH, 20H, 79H, 6FH, 75H,0DH,0AH,24H, 00H,00H说明对BUF, CED,ADDR等变量施行TYPE,LENGTH SIZE运算符后,其结果分别为多少?TYPEBUF=2 LENGTH BUF = 3SIZEBUF = 6TYPECED=1 LENGTH CED = 1SIZECED = 1TYPE ADDR = 2 LENGTH ADDR = 1 SIZE ADDR = 2COUNT的值为多少?196.17编写一个将16位二进制数

14、转化为四位十六进制数的程序,并将十六进制数的各位 显示出来。注:答案中给了一个假定的16位二进制数。DATA SEGMENTBINDW1001110101111011BHEXASCDB 4 DUP(20H)DB$DATAENDSSTACK1SEGMENT PARA STACKDW 20HDUP(0)STACKlENDSCODE SEGMENTASSUMECS:CODE,DS:DATA,SS: STACKlBINHEX:MOV CH,4;十六进制数的位数MOV BX,BIN;取待转移数据MOV DI,OFFSET HEXASC;取存放ASCII码首地址CONV1:MOV CL,4ROL BX,C

15、L;取4位二进制数MOV AL,BLAND AL,0FHCMP AL,09H;是0-9吗?JBEASCI;是,转移ADD AL,07H;是A-F,先加07HASCI:ADD AL,30H;加 30HMOV DI, AL;存结果INCDI;修改指针DEC CHJNECONVI;计数未完,继续LEADX, HEXASCMOV AH, 09HINT21HCODE ENDSEND BINHEX很多同学的答案:DATA SEGMENTADW 4XDW(16位二进制数)Y DB 4 DUP(?)DATA ENDSSTART: MOV CX, ALEA DI, YAGAIN: MOV BX, XPUSH C

16、XDEC CXMOVING:SHR BX, 4LOOP MOVINGPOP CXAND BL, 0FHCMP BL, 09HJG DAYUADD BL, 30HJMP XIAOYUDAYU: ADD BL, 37HXIAOYU:MOV DI, BLINC DILOOP AGAINLEA DX, YMOV AH, 09HINT21HCODE ENDSENDSTART7.1名词解释(1) 时钟周期:一个时钟脉冲的时间长度,CPU的时钟频率的倒数,也称T状态。(2)总线周期:CPU中,BIU完成一次访问存储器或I/O端口操作所需要的时间,称作一个 总线周期,也称机器周期(Machine Cycle)

17、。(3)指令周期:执行一条指令所需的时间称为指令周期。(4)等待周期:在T3和T4之间插入的周期。(4)(5)空闲状态:CPU不执行总线周期时的状态。(6) 时序:计算机操作运行的时间顺序。8.5简述CPU与外设以查询方式传送数据的过程。现有一输入设备,其数据端口的地址 为FEE0H,并从端口 FEE2H提供状态,当其D0位为1时表明输入数据准备好。试编写采用查 询方式进行数据传送的程序段,要求从该设备读取64个字节并输入到从2000H: 2000H开始 的内存中。(程序中需加注释)P144145 页。MOV AX, 2000HMOV DS,AX;设定段基址MOV DI,2000H;目的地址送

18、DIMOV CX, 64;字节数READ:MOV DX, 0FEE2H;指向状态口IN AL,DX;读入状态位TEST AL,01H;数据准备好否?JZ READ;否,循环检测MOV DX, 0FEE0H;指向数据口IN AL,DX;已准备好,读入数据MOV DI, AL;存到内存缓冲区中INC DI;修改地址指针LOOP READ;未传送完,继续传送很多同学的答案:MOV CX, 64NEXTIN: IN AL, 0FEE2HTEST AL, 01HJZ NEXTININ AL, 0FEE0HMOV BX, 2000HMOV 200HBX, ALINC BXLOOP NEXTIN8.6简述中

19、断传送的特点。中断传送的显著特点是:能节省大量的CPU时间,实现CPU与外设并行工作,提高计算 机的使用效率,并使I/O设备的服务请求得到及时处理。I/O主动,CPU被动。9.3设8259A应用在8086系统,采用电平触发方式,中断类型号为60H-67H,采用特 殊全嵌套方式,中断非自动结束,非缓冲工作方式,端口地址为63H和64H,写出其初始化 程序。ICW1=00011011B=1BH,ICW2=01100000B=60H,ICW4=00010101B=15HICW1必须写入到偶端口地址MOV AL, 1BHOUT 64H, ALMOV AL, 60HOUT 63H, ALMOV AL,

20、15HOUT 63H, AL9.4设8259A级连应用于8086系统,从片的中断请求线接于主片的IR7输入端,主片 端口地址为64H和66H,从片端口地址为84H和86H,主片IR0的中断向量号为50H,从片IR0 的中断向量号为58H,主片工作方式同9.3,从片工作方式采用缺省工作方式,编写初始化程 序,并画出硬件连接电路图。64H = 01100100B84H = 10000100B66H = 01100110B86H = 10000110B数据总线主片:ICW1=00011001B=19HICW2=01010000B=50H ICW3=10000000B=80HICW4=00010101

21、B=15H从片:ICW1=00011001B=19HICW2=01011000B=58H ICW3=00000111B=07HICW4=00000001B=01H10.3试按如下要求分别编写8253的初始化程序,已知8253的计数器02和控制字寄 存器I/O地址依次为40H43H。(因为地址小于256,所以可以不用DX。)(1) 使计数器1工作方式0,仅用8位二进制计数,计数初值为128。计数器1的通道地址为:41H; 128=80H控制字:01010000B=50HMOV AL , 50HOUT 43H ,ALMOV AL ,80HOUT 41H ,AL(2) 使计数器0工作方式1,按BCD

22、码计数,计数值为3000。计数器0的通道地址为:40H; 3000的BCD码为3000H控制字:00110011B=33HMOV AL , 33H OUT 43H , AL MOV AL , 00H OUT 40H , AL MOV AL , 30H OUT 40H , AL(3) 使计数器2工作方式2,计数值为02F0H。计数器2的通道地址为:42H 控制字:10110100B=B4HMOV AL , B4H OUT 43H , AL MOV AL , F0H OUT 42H , ALMOV AL , 02HOUT 42H , AL10.4设8253计数器02和控制字寄存器的I/O地址依次为

23、F8HFBH,说明如下程序 的作用。MOV AL,33H;00110011B计数器0,先低位后高位,方式1,BCD码计数OUT 0FBH,AL;写控制字MOV AL,80H;置计数初值低位字节80HOUT 0F8H,AL;先写低位字节MOV AL,50H;置计数初值高位字节50HOUT 0F8H, AL ;写高位字节程序的作用为:使计数器0工作在方式1,用BCD码计数,计数初值为5080。10.5设8253的通道02和控制端口的地址分别为300H、302H、304H和306H,又设由 CLK0输入计数脉冲频率为2MHz。要求通道0输出1.5kHz的方波,通道1用通道0的输出作 计数脉冲,输出频

24、率为300Hz的序列负脉冲,通道2每秒钟向CPU发50次中断请求。试编写 初始化程序,并画出硬件连线图。通道0:输出方波则工作在方式3;计数初值为n0=2MHz/1.5kHz1334=536H (1.499kHz) 控制字为:00110110B=36H通道1:输出序列负脉冲则工作在方式2;计数初值为n1=1.5kHz/300Hz=5=05H控制字为:01010100B=54H通道2:每秒钟向CPU发50次中断请求则工作在方式2;计数初值为n2=300/50=6=06H控制字为:10010100B=94H初始化程序:通道 0: MOV DX , 306HMOV AL , 36HOUT DX ,

25、ALMOV DX , 300HMOV AL , 36HOUT DX , ALM/IOA7 A0MOV AL , 05HOUT DX , AL -II/O_ 译码-+5VA2A1WRRDD7 D0 3CSGATE0GATE1GATE2A1CLK0A0OUT0WRCLK1RDOUT1CLK2OUT2D7D02MHz1.5KHz方波300Hz序列负脉冲每秒50次中断信号11.3编程使8255A的PC5端输出一个负跳变。如果要求PC5端输出一个负脉冲,则程序 又如何编写?设端口地址分别为:B0H B2H B4H B6H。系统复位后8255A的所有端口都被置为输入。控制字为:10000000B=80H输

26、出负跳变:MOV AL,80HOUT B6H,ALMOV AL,0BHOUT B6H,ALMOV AL,0AHOUT B6H,AL输出负脉冲:MOV AL,80HOUT B6H,ALMOV AL,0BHOUT B6H,ALMOV AL,0AHOUT B6H,ALMOV AL,0BHOUT B6H,AL11.5设一工业控制系统,有四个控制点,分别由四个开关K0K3控制,控制点的状态 用发光二极管L0L3表示,开关打开则对应的发光二极管亮,表示该控制点运行正常;开关 闭合则对应发光二极管不亮,说明该控制点出现故障。画出系统的结构框图并编写程序。设端口地址分别为:B0H B2H B4H B6HA 口

27、、B 口都工作在方式0,A 口输入,B 口输出,C 口未用控制字为:10010000B=90HMOV DX, 0B6H;控制字寄存器MOV AL,10010000B;控制字OUT DX,AL;写入控制字TEST:MOV DX,0B0H;指向 A 口IN AL,DL;从A 口读入开关状态MOV DX,0B2H;指向 B 口OUT DX,AL; B 口控制LED,指示开关状态JMP TEST;循环检测12.4设16550采用18.432MHZ基准时钟,端口地址为3F83FFH,要求的波特率为 19200,字符格式为8位数据位、偶校验、1个停止位,试写出其初始化程序。LCR 地址:3FBH DL 地

28、址:3F8 (DLAB=1)DH 地址:3F9 (DLAB=1)除数=60=003CH LCR 的值:00011011B=1BH FIFO 地址:3FAH;赋值 10000111B=87HMOVDX, 3FBH;DX指向LCRMOVAL, 80H;置 DLAB=1OUTDX,ALMOVDX,3F8H; DX 指向 DLMOVAL, 3CHOUTDX,AL;送除数低字节INCDX;DX指向DHMOVAL, 00HOUTDX,AL;送除数高字节MOVDX, 3FBH;DX指向LCRMOVAL, 1BH;8位数据位、偶校验、1个停止位OUTDX,ALMOVDX,3FAHMOVAL, 87H;允许 FIFOOUTDX,AL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号