资源描述:
《微机接口课后习题答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
2.38086对存储器的管理为什么采用分段的办法答:8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围(1MB,20位地址).若不用分段方法,16位地址只能寻址64KB空间.2.1380386内部结构由哪几部分组成简述各部分的作用.答:80386内部结构由执行部件(EU),存储器管理部件(MMU)和总线接口部件(BIU)三部分组成.EU包括指令预取部件,指令译码部件,控制部件,运算部件及保护检测部件,主要功能是执行指令.存储器管理部件包括分段部件,分页部件,实现对存储器的分段分页式的管理,将逻辑地址转换成物理地址.总线接口部件作用是进行片外访问:对存储器及I/O接口的访问,预取指令;另外的作用是进行总线及中断请求的控制3.18086/8088微处理器有哪些寻址方式并写出各种寻址方式的传送指令2条(源操作数和目的操作数寻址).答:寻址方式是指计算机在执行指令时寻找操作数的方式.8086/8088微处理器有以下几种寻址方式:①立即寻址.操作数(仅限源操作数)直接放在指令中.例如:movcx,100;movah,20h.②寄存器寻址.操作数在CPU的内部寄存器中.例如:moves,ax;movdl,bh.③直接寻址.指令中直接给出了操作数的偏移地址.例如:movax,[3000h];movbuf,100.④寄存器间接寻址.操作数的偏移地址放在寄存器bp,bx,si,di四个寄存器中的一个里.例如:movax,[si];mov[bx],cx.⑤寄存器相对寻址.操作数的有效地址为基址寄存器或变址寄存器的内容与指令中指定的位移量之和.例如:movax,cnt[si];movstr[bx],ax.⑥基址变址寻址.操作数的有效地址是一个基址寄存器和一个变址寄存器的和.例如:movax,[si+bx];mov[bx+di],dx.⑦相对基址变址寻址.操作数的有效地址为一个基址寄存器,一个变址寄存器的内容与指令中指定的位移量三者之和.例如:movax,cnt[bx][si];movcnt[bx][si],ax.3.5简述堆栈的性质.如果SS=9B9FH,SP=200H,连续执行两条PUSH指令后,栈顶的物理地址是多少SS,SP的值是多少再执行一条POP指令后,栈顶的物理地址又是多少SS,SP的值又是多少答:先进后出.9BBF0H-4=9BBECH9BBECH+2=9BBEEH3.11如果要将AL中的高4位移至低4位,有几种方法请分别写出实现这些方法的程序段.答:①循环左移movcl,4rolal,cl②循环右移movcl,4roral,cl③右移movcl,4 shral,cl4.1汇编语言有何特点编写汇编语言源程序时,一般的组成原则是什么答:汇编语言是计算机能够提供给用户使用的最快速有效的语言,它是以处理器指令系统为基础的低级程序设计语言,采用助记符表示指令操作码,采用标识符表示指令操作数.利用汇编语言编写程序的主要优点是可以直接,有效地控制计算机硬件,因而容易创建代码序列短小,运行快速的可执行程序.在对程序的空间和时间要求高的应用领域,汇编语言的作用是不容置疑和无可替代的.然而,汇编语言作为一种低级语言也存在很多不足,例如,功能有限,编程难度大,依赖处理器指令,这也限制了它的应用范围.汇编语言源程序由若干语句组成,通常,这些语句可以分为3类,分别是:(1)指令语句;(2)宏指令语句;(3)伪指令语句.汇编语言也由段组成,8086/8088按照逻辑段组织程序,具有代码段,数据段,附加段和堆栈段,段与段之间的顺序可以任意排列.需要独立运行的程序必须包含一个代码段,一个程序只有一个起始点,且必须指示程序的起始点.4.16编写一个程序,统计寄存器AX中二进制数位"0"的个数,结果以二位十进制数形式显示到屏幕上.答:.MODELSMALL.CODESTART:MOVCX,16MOVBL,0;BL中放0的个数AGN:SHLAX,1;数0的个数JCNEXTINCBLNEXT:LOOPAGNMOVAL,BLDAAMOVDL,AL;显示高位ANDDL,0F0HMOVCL,4SHRDL,CLADDDL,30HMOVAH,2INT21HMOVDL,AL;显示低位ANDDL,0FHADDDL,30HMOVAH,2INT21HMOVDL,0DH;显示回车 MOVAH,2INT21HMOVDL,0AH;显示换行MOVAH,2INT21HMOVAX,4C00HINT21HENDSTART4.22在DAT字节单元中有一个有符号数,判断其正负,若为正数,则在屏幕上显示"+"号;若为负数,则显示"-"号;若是0,则显示0.答:DISPLAYMACROMOVAH,2INT21HENDM.MODELSMALL.DATADATDB9CH.CODESTART:MOVAX,@DATAMOVDS,AXMOVAL,DATCMPAL,0JZZEROJNSPOSIMOVDL,'-'DISPLAYSTOP:MOVAX,4C00HINT21HZERO:MOVDL,'0'DISPLAYJMPSTOPPOSI:MOVDL,'+'DISPLAYJMPSTOPENDSTART4.23编程求1~400中所有奇数的和,结果以十六进制数形式显示到屏幕上.答:.MODELSMALL.CODESTART:XORBX,0MOVCX,200MOVDX,1 AGN:ADDBX,DX;求和INCDXINCDXLOOPAGNCALLBTOHMOVAX,4C00HINT21HBTOHPROCMOVCL,4MOVDL,BH;最高位SHRDL,CLCMPDL,0AHJCN1ADDDL,7N1:ADDDL,30HMOVAH,2INT21HMOVDL,BH;次高位ANDDL,0FHCMPDL,0AHJCN2ADDDL,7N2:ADDDL,30HMOVAH,2INT21HMOVDL,BL;次低位SHRDL,CLCMPDL,0AHJCN3ADDDL,7N3:ADDDL,30HMOVAH,2INT21HMOVDL,BL;最低位ANDDL,0FHCMPDL,0AHJCN4ADDDL,7N4:ADDDL,30HMOVAH,2INT21HRETBTOHENDPENDSTART 4.24在以DAT为首地址的字节缓冲区中存有100H个无符号字节数据,编程求其最大值与最小值之和,结果存入RESULT字单元.答:.MODELSMALL.DATADATDB……;准备100个数RESULTDW.CODESTART:MOVAX,@DATAMOVDS,AXMOVCX,99LEASI,DATMOVDL,[SI]MOVDH,DLINCSIMOVBX,SIAGN1:CMPDH,[SI];求出最大值JNBNEXT1MOVDH,[SI]NEXT1:INCSILOOPAGN1MOVCX,99AGN2:CMPDL,[BX];求出最小值JBNEXT2MOVDL,[BX]NEXT2:INCBXLOOPAGN2XORAX,AX;求和ADDDH,DLMOVAL,DHADCAX,0MOVRESULT,AX;int3MOVAX,4C00HINT21HENDSTART5.3计算机的内存和外存有什么区别答:内存:由DRAM构成,CPU可以直接访问,用来存放当前正在使用或要经常使用的程序或数据,内存的地址空间受CPU地址总线位数的限制,容量较小,读写速度快,价格相对较高.外存:一般由磁盘,光盘及U盘构成,CPU不能直接访问,需要专门的驱动设备,读写速度较慢,容量较大,价格相对较低. 6.1试说明一般中断系统的组成和功能.答:处理器内部应有中断请求信号的检测电路,输出中断响应信号,保存断点的逻辑,转向中断处理程序的逻辑,中断返回逻辑.系统中要有一中断控制器,管理多个中断源,提供处理机所需的中断处理信息.系统中请求中断处理的I/O接口电路要有提供中断请求信号及接收中断响应信号的逻辑.6.2什么是中断类型码,中断向量,中断向量表在基于8086/8088的微机系统中,中断类型码和中断向量表之间有什么关系答:处理机可处理的每种中断的编号为中断类型号.中断向量是指中断处理程序的入口地址,由处理机自动寻址.中断向量表是存放所有类型中断处理程序入口地址的一个默认的内在区域.在8086系统中,中断类型码乘4得到向量表的入口,从此处读出4字节内容即为中断向量.6.4试叙述基于8086/8088的微机系统处理硬件中断的过程.答:以INTR请求为例.当8086收到INTR的高电平信号时,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS,IP内容进入堆栈,清除IF,TF;8086将类型码乘4后得到中断向量入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程.6.5在PC机中如何使用"用户中断"入口请求中断和进行编程答:PC机中分配给用户使用的中断是IRQ9,经扩展插槽B4引出,故把用户的中断请求线连接到B4上.在应用程序中,利用25H号系统调用将中断服务程序的入口地址写入对应0AH类型中断对应的中断向量表中去.在应用程序中把主片8259AD2屏蔽位清0,把从片8259AD1屏蔽位清0,使主片的IR2,从片的IR1可以输入中断请求.中断服务程序结束前向主片8259A发中断结束命令.应用程序结束之前对主片的IR2和从片的IR1进行屏蔽,关闭用户中断请求.6.68259A中断控制器的功能是什么答:8259A中断控制器可以接受8个中断请求输入并将它们寄存.对8个请求输入进行优先级判断,裁决出最高优先级进行处理,它可以支持多种优先级处理方式.8259A可以对中断请求输入进行屏蔽,阻止对其进行处理.8259A支持多种中断结束方式.8259A与微处理器连接方便,可提供中断请求信号及发送中断类型码.8259A可以进行级连以便形成多于8级输入的中断控制系统.6.78259A初始化编程过程完成哪些功能这些功能由哪些ICW设定答:初始化编程用来确定8259A的工作方式.ICW1确定8259A工作的环境:处理器类型,中断控制器是单片还是多片,请求信号的电特性.ICW2用来指定8个中断请求的类型码.ICW3在多片系统中确定主片与从片的连接关系.ICW4用来确定中断处理的控制方法:中断结束方式,嵌套方式,数据线缓冲等. 6.88259A在初始化编程时设置为非中断自动结束方式,中断服务程序程序编写时应注意什么答:在中断服务程序中,在返回主程序之前按排一条一般中断结束命令指令,8259A将ISR中最高优先级位置0,结束该级中断处理以便为较低级别中断请求服务.6.98259A的初始化命令字和操作命令有什么区别它们分别对应于编程结构中哪些内部寄存器答:8259A的工作方式通过微处理器向其写入初始化命令字来确定.初始化命令字分别装入ICW1-ICW4内部寄存器.8259A在工作过程中,微处理器通过向其写入操作命令字来控制它的工作过程.操作命令分别装入OCW1-OCW3内部寄存器中.8259A占用两个端口号,不同的命令字对应不同的端口,再加上命令字本身的特征位及加载的顺序就可以正确地把各位命令字写入对应的寄存器中.6.108259A的中断屏蔽寄存器IMR与8086中断的允许标志IF有什么区别答:IF是8086微处理器内部标志寄存器的一位,若IF=0,8086就不响应外部可屏蔽中断请求INTR引线上的请求信号.8259A有8个中断请求输入线,IMR中的某位为1,就把对应这位的中断请求IR禁止掉,无法被8259A处理,也无法向8086处理器产生INTR请求.6.14若8086系统采用单片机8259A中断控制器控制中断,中断类型码给定为20H,中断源的请求线与8259A的IR4相连,试问:对应该中断源的中断向量表入口地址是什么若中断服务程序入口地址为4FE2H,则对应该中断源的中断向量表内容是什么,如何定位答:中断向量表入口地址为:0段的0090H地址.对就4FE24H中断服务程序入口,在向量表中定位的情况:(0090H)=24H,(0091H)=00H,(0092H)=E0H,(0093H)=4FH.6.15试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,全嵌套中断优先级,数据总线无缓冲,采用中断自动结束方式.中断类型码为20H-27H,8259A的端口地址为B0H和B1H.答:ICW1=1BH(送B0H端口),ICW2=20H(送B1H端口),ICW4=03H(送B1H端口)7.1设8253三个计数器的端口地址为201H,202H,203H,控制寄存器端口地址200H.试编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX.答:MOVAL,80HOUT200H,ALINAL,203HMOVBL,ALINAL,203H,MOVBH,ALMOVAX,BX7.5,试简述微机系统中定时器/计数器的必要性和重要性,以及定时实现的常用方法.答:在微型计算机系统尤其是实时计算机测控系统中,经常需要为微处理器和I/O设备提供实时时钟,以实现定时中断,定时检测,定时扫描,定时显示等定时或延时控制,或者对外 部事件进行计数并将计数结果提供给CPU.实现定时或延时控制,通常有三种方法:软件定时,不可编程硬件定时和可编程硬件定时.7.7,8253的初始化编程包括哪几项内容它们在顺序上有无要求,如何要求答:其初始化编程的步骤为:(1)写入通道控制字,规定通道的工作方式.(2)写入计数初值N.8.1比较中断与DMA两种传输方式的特点.答:中断方式下,外设需与主机传输数据时要请求主机给予中断服务,中断当前主程序的执行,自动转向对应的中断处理程序,控制数据的传输,过程始终是在处理器所执行的指令控制下.在直接存储器访问(DMA)方式下,系统中有一个DMA控制器,它是一个可总线的主控部件.当外设与主存储器之间需要传输数据时,外设向DMA控制器发出DMA请求,DMA控制器向中央处理器发出总线请求,取得总线控制权后,DMA控制器按照总线时序控制外设与存储器间的数据传输而不是通过指令来控制数据传输,传输速度大大高于中断方式.8255初始化已知8255A的地址为0060H-0063H,A组设置方式1,端口A作为输入,pc6、pc7作为输出,B组设置为方式1,端口B作为输入,编制初始化程序。MOVDX,0063H;控制寄存器地址MOVAL,10010110B;根据题目条件得到的控制字OUTDXAL;将控制字写到控制寄存器中为什么写入的是63h?是因为8255的内部结构是有四个寄存器与cpu分别相连,相当于cpu传出来的数据可以放在8255的A寄存器B寄存器C寄存器控制寄存器四个寄存器中,其中每个寄存器分配有单元地址,60对应A寄存器的地址入口,顺序下来就是63对应控制寄存器的地址入口,,既然是要把控制字存入寄存器,使8255按照控制字的指向工作的话,就是把控制字10010110B存入控制寄存器中,自然就是把63h的地址存入dx中9.28255A的方式0一般使用在什么场合在方式0时,如果使用应答信号进行联络,应该怎么办答:8255A工作在方式0,4个端口相互独立,它们之中每个端口既可作为输入端口,也可作为输出端口,各端口之间没有必然关系.4个端口的输入/输出可以有16中组合,所以可适用于多种使用场合.在方式0时,CPU采用无条件读写方式与8255A交换数据,也可采用查询方式与8255A交换数据.采用查询方式,可利用端口C作为与外设的联络信号9.3当8255A工作在方式2并且采用中断时,CPU如何区分是输入或输出引起 的中断答:当8255A工作在方式2并且采用中断时,CPU根据INTE1和INTE2的状态确定.INTE1为输出中断允许,由端口C的PC6置位/复位,INTE2为输入中断允许,由端口C的PC4置位/复位.9.4设8255A的4个端口地址为0060H~0063H,试编写下列各种情况下的初始化程序.(1)将A组和B组设置方式0,A口,B口为输入,C口为输出.(2)将A组工作方式设置方式2,B组为方式1,B口作为输出.(3)将A口,B口均设置方式1,均为输入,PC6和PC1为输出.(4)A口工作在方式1,输入;B口工作在方式0,输出;C口高4位配合A口工作,低4位为输入.答:(1)MOVDX,63HMOVAL,82HOUTDX,AL(2)MOVDX,63HMOVAL,C4HOUTDX,AL(3)MOVDX,63HMOVAL,B6HOUTDX,AL(4)MOVDX,63HMOVAL,B1HOUTDX,AL9.9在并行接口中为什么要对输出数据进行锁存在什么情况下可以不锁存答:数据锁存就是延长数据存在的时间,便于与外设存取时间配合.在外设速度与主机相匹配时,可以不需要锁存.9.10并行接口的主要特点及其主要功能是什么答:主要特点:数据并行传输,传输速度快,但距离较近.主要功能:并行传输数据,在主机与外设之间起到数据缓冲和匹配的作用10.1串行通信与并行通信相比,有那些基本特点答:串行通信与并行通信相比,其基本特点有:(1)信息在1根传输线上,一位一位按位串行传送,且数据和控制联络信息混在一起进行传送.(2)串行传送的数据有固定的格式.(3)串行通信,既可用于近距离,也可用于远距离,远距离传送要使用MODEM.(4)串行通信,采用负逻辑和高压电平,与TTL电平不兼容.(5)串行通信要求双方的传输速率必须一致,故须进行传输速率控制.(6)串行通信易受干扰,出错难以避免,故须进行差错控制. 10.5异步通信的特点是什么同步通信的特点是什么答:异步通信是指字符与字符之间的传送是异步的,而字符内部位与位之间的传送是同步的.因为异步通信是以字符为单位进行传送的,发送端何时发送1个字符,接收端预先并不知道.也就是说,"异步"主要体现在字符与字符之间的传送没有严格的定时要求.同步通信是指不仅字符内部位与位之间的传送是同步的,字符与字符之间的传送也是同步的.因为,同步通信是以数据块为单位进行传送的,而1个数据块包含了若干个字符,它作为1个整体,一旦传送开始,要求数据块内的每一位的传送都必须是同步的.也就是说,"同步"主要体现在数据块内字符与字符之间和字符内位与位自荐的传送都必须是同步的.10.6RS-232C总线的主要特点是什么它的逻辑电平是如何定义的答:RS-232C总线是为了电话网络进行数据通信而制定的标准.该标准属于异步通信总线,主要用于主机与CRT或调制解调器之间的通信,以及某些多机通信的情况.RS-232C总线的逻辑电平是负逻辑,以+3~+25之间的任意电压表示逻辑"0",以-3~-25V之间的任意电压表示逻辑"1",在实际使用中,电平常为±12V或±15V.10.8RS-485是什么它为什么比RS-232C直接传输的距离远,速率高,而且可靠性高答:RS-485是一种多发送器/多接收器的串行接口标准.RS-485采用共线电路结构,在一对平衡传输线的两端配置终端电阻,其发送器,接收器,组合收发器可刮在平衡传输线的任何位置,实现多个驱动器和多个接收器共用同一传输线的多点通信.它也是RS-232C的改进型标准,并且也是一种平衡传输方式的接口标准.因此,它的直接传输距离,传输速率以及可靠性都比单线传输方式的RS-232C标准要高得多.10.11试分别说明8251A的工作方式控制字,操作命令控制字和状态控制字的作用答:8251A的方式命令,工作命令和状态字的作用如下:(1)工作方式控制字是用来设置通信方式及该方式下的数据格式,因为8251A支持同步和异步两种通信方式,所以工作方式控制字的各位在不同的通信方式下,其功能有所不同.(2)操作命令控制字是用来控制串行接口的内部复位,发送,接收,清除错误标志等操作以及设置RTS,DTR联络信号有效的.如果是异步方式,且不使用MODEM,则工作命令字8位中,只有4个关键位需要使用.