原载:CSDN博客,作者:呼啸
1、8086是多少位的微处理器?为什么?
答:8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。
2、EU与BIU各自的功能是什么?如何协同工作?
答:EU是执行部件。主要功能是执行指令。BIU是总线接口部件,与片外存储器 I/O接口电路传输数据。EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。EU与BIU可分别独立工作,当EU不需要BIU的服务时,BIU可进行填充执行队列的操作。
[
本帖最后由 tiankai001 于 2013-4-23 22:44 编辑 ]
3、8086/8088微处理器内部有哪些寄存器,它们的主要作用是什么?
答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。AX、BX、CX、DX一般作为通用数据寄存器。SP为堆栈指针寄存器,BP(基数指针寄存器)、DI(目的变址寄存器)、SI(源变址寄存器)在间接寻址时作为地址寄存器或变址寄存器。总线接口部件设有段寄存器CS(Code Segment),DS(Code Segment),SS(Stack Segment),ES(Extra Segment)和指令指针寄存器IP。段寄存器存放段地址,与偏移地址共同形成物理地址。IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。
4、在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。
答:逻辑地址是在程序中对存储器地址的一种表示方法,由段地址和段内偏移地址两部分组成,如1234H:0088H。偏移地址是指段内某个存储单元相对该段首地址的差值,是一个16位的二进制代码,物理地址是8086芯片引线送出的20位地址码,用来指出一个特定的存储单元。
5、给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。
答:
物理地址=段地址*10H+偏移地址=0C00EH*10H+20C0H=0C21A0H
7、8086与8088的主要区别是什么?
答:8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度(指令队列)为6字节,8088只有4字节。
8、怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同?
答:引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式。MN/MX#引线接低电平,8086被设定为最大模式。
最小模式下控制信号由8086相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供。8288的输入为8086的S2#--S0#三条状态信号引线提供~
9、8086被复位后,有关寄存器的状态是什么?微处理器从何处开始执行程序?
答:标志寄存器、IP、DS、ES、SS和指令队列置0.CS置全1.处理器从FFFF0H存储单元取指令并开始执行。
10.8086基本总线周期是如何组成的?各状态中完成什么基本操作?
答:基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4.在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号RD#、WR#及其他相关信号;T3期间完成数据的访问;T4结束该总线周期。
11、8086可屏蔽中断请求输入线是什么?“可屏蔽”的涵义是?
答:可屏蔽中断请求输入线为INTR;“可屏蔽”是指该中断请求可经软件清除标志寄存器中的IF位而被禁止。
1、总线的定义是什么?简述总线的发展过程。
答:总线就是两个以上模块(或子系统)间传送信息的公共通道,通过它模块间可进行数据、地址码及命令的传输。
最早的标准化总线是S-100总线(1975),80年代初IBM PC/XT个人计算机采用8位ISA总线,之后又在IBM PC/AT机上推出16位ISA总线。随着外设接口对总线性能的不断提高,出现了EISA总线及PCI总线。PCI总线目前已被个人计算机广泛采用,成为新的工业标准。
2、总线的指标有 哪几项。它工作时一般由哪几个过程组成?
答:总线的指标有(1)总线宽度,一次总线操作可以操作的数据位数;(2)总线工作频率,总线基本定时时钟频率,它代表总线操作的最高频率。(3)单个数据传输所用的时钟周期数。总线上信息传输过程可分解为:(1)请求总线(2)总线裁决(3)寻址(4)数据传输(5)错误检查
一般中断系统的组成和功能:
处理器内应有中断请求信号的检测电路,输出 中断相应信号,保存断点的逻辑,转向中断处理程序的逻辑,中断返回的逻辑。系统中要有一个中断控制器,管理多个中断源,提供处理机所需的中断处理信息。系统中请求中断处理的I/O接口电路要有提供中断请求信号及接收中断相应信号的逻辑。
什么是中断类型吗、中断向量、中断向量表?在基于9086/8088的微机系统中,中断类型码和中断向量之间有什么关系?
答:处理机可处理的每种中断的编号为中断类型码。中断向量指中断程序的入口地址,由处理机自动寻址。中断向量表是存放所有类型中断处理程序入口地址的一个默认内存区域。在8086系统中,中断类型码乘4得到向量表的入口。从此处读出4字节内容极为中断向量。
什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?
答:硬件中断是通过中断请求线输入电信号来请求处理机进行中断服务。软件中断是处理机内部进行识别并处理的中断过程。
硬件中断一般由中断控制器提供中断类型码,处理机自动转向中断处理程序。软件中断完全由处理机内部形成中断处理程序入口地址并转向处理程序,不需要外部提供信息。
叙述基于8086/8088的微机系统处理硬件中断的过程
答:以INTR为例。当8086收到INTR的高电平信号时,在当前指令执行完且IF=1时条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发出来的一字节中断类型码;8086完成保护现场的操作。CS,IP内容进入堆栈。清除IF、TF。8086将类型码承4后得到中断向量入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序。完成了INTR中断请求的响应过程。
同步传输方式和异步传输方式的特点各是什么?
答:同步传输方式中发送给方和接收方的时钟是统一的、字符与字符间的传输是同步无间隔的。异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的。
1、在异步传输时,如果发送方的波特率是600,接收方的波特率是1200,能否正常通信,为什么?
答:不能正常通信,因为发送方和接收方的波特率不同,而接收端的采样频率是按传输频率来设置。
2、A/D和D/A转换在危机应用中分别起什么作用?
答:在微机应用中,A/D转换器完成输入模拟量到数字量的转换,供微机采集数据。D/A转换器完成微机输出数字量到模拟量的转换,实现微机控制。
D/A转换器和微机接口中的关键问题是什么?对不同的D/A芯片应采用何种方法链接?
答:D/A转换器和微机接口时主要注意两点:第一要了解所选用的D/A转换器本身是否带有数据锁存器。如果芯片内部带有锁存器可以直接和CPU的数据总线链接。如果芯片内部不带有锁存器,在接口电路中需要通过数据锁存器来连接CPU的数据总线和D/A转换器的数据线。第二是D/A转换器的位数和所要链接的微机数据总线的位数是否一致。以便在需要加数据锁存器时,加几级数据锁存器,如果CPU的数据总想是8位,使用的是大于8位的D/A转换器,通常采用两级缓冲结构和CPU数据总线链接。
什么叫D/A转换器的分辨率?
答:D/A转换器的分辨率指的是它所能分辨的最小输出电压和最大输出电压的比值。通常用D/A转换器输出数字量的位数来表示。
一、指出下列程序中的错误:
[java] view plaincopy
- STAKSG SEGMENT
- DB 100DUP(?)
- STA_SG ENDS
-
- DTSEG SEGMENT
- DATA1 DB ?
- DTSEG END
-
- CDSEG SEGMENT
- START: MOV DS,DATSEG
- MOV AL,34H
- ADD AL,4F
- MOV DATA,AL
- START ENDP
- CDSEG ENDS
- END
改正后:
[java] view plaincopy
- STAKSG SEGMENT
-
- DB 100DUP(?)
- STAKSG ENDS
- CDSEG SEGMENT
- ASSUME CS:CODESEG,DS:DTSEG,SS:STAKSG
- START: MOV AX,DTSEG
- MOV DS,AX
- MOV AL,34H
- ADD AL,4FH
- MOV DATA1,AL
- MOV AH,4CH
- INT 21H //主意这两句的话是调用21中断的4CH号功能,退出程序
- CDSEG ENDS
- END
总结:汇编中不存在END. 在定义的段结束要以ENDS结束。主意段名称不要写错。 程序结束不能用ENDS,应该用MOV AH,4CH INT 21H。这两句话。要用ASSUME指令把段和段寄存器联系起来。段不能直接放到段寄存器中,应该先放到通用寄存器中,再把通用寄存器里的数据放到段寄存器中去。
1、对于下面两个数据段,偏移地址为10H和11H的两个字节中的数据是一样的吗?为什么?
[html] view plaincopy
- DTSEG SEGMENT
- ORG 10H //连接时使用的伪指令
- DATA1 DB 72H
- DB 04H
- DTSEG ENDS
-----------------------------------------
[html] view plaincopy
- DTSEG SEGMENT
- ORG 10H
- DATA1 DW 7204H
- DTSEG ENDS
答:不一样,分别是72H,04H.04H,72H。存储时低8位存放低字节,高8位存放高字节。
注意:内存中是按字节为单位存储的。
1、下面的数据设置了多少个字节?
(1)ASC_DATA DB '1234'
答:4个字节。因为是定义了一个字符串。有4个字符,因为每个字符占一个字节,所以4个字节。
(2)HEX_DATA DB 1234H
答:占了2个字节。因为定义了一个16进制的数。16进制的一“位”相当于二进制的4“位”。8个二进制位是一个字节。这里有4个16进制位就是16个进制位,即为2个字节。
2、执行下面指令后,AX寄存器中的内容是什么?
[html] view plaincopy
TABLE DW 10,20,30,40,50
ENTRY DW 3
MOV BX,OFFSETTABLE ///将Table的起始地址加入BX寄存器中
ADD BX,ENTRY //将BX中地址加上3
MOV AX,[BX] //取内存地址中的内容
答案:AX寄存器中的内容是40.
1、指出下列指令的错误:
(1)MOV AH,BX
答:源寄存器和目的寄存字长不一致。
(2)mov [SI],[BX]
答:源、目的 不能同时为存储器寻址方式。
(3)mov AX,[SI][DI]
答:基址变址方式不能有SI和DI的组合。
(4)mov AX,[BX][BP]
答:基址变址方式不能有BX和BP的组合。
(5)mov [BX],ES:AX
答:在8086寻址方式中,AX不能作为基址寄存器使用,而且源、目的不能同时为存储器寻址方式。
(6)mov BYTE PTR[BX],1000
答:1000超出一个字节的表数范围。
(7)mov AX,OFFSET[SI]
答:offset只能用于简单变量,应去掉。
(8)mov cs,ax
答:CS不能作为目的寄存器
(9)mov ds,bp
答:段地址不能直接送入数据段寄存器。
[html] view plaincopy
- DATA SEGMENT
- TABLE_ADDR DW 1234H
- DATA ENDS
- MOV BX,TABLE_ADDR
- LEA BX,TABLE_ADDR
请写出上述两条指令执行后,BX寄存器中的内容。
解:
[html] view plaincopy
- MOV BX,TABLE_ADDR ;执行后(BX)=1234H;
- LEA BX,TABLE_ADDR;;执行后(BX)=OFFSET TABLE_ADDR
1、微处理器、微机和微机系统三者之间有什么不同?
答:微机处理器:利用微电子技术将运算器可控制器做在统一集成电路上的一个独立部件。
微机:通过总线吧I/O接口电路、CPU和半导体存储器有机的组合在一起,即构成一台计算机的物理装置,称为微机。
微机系统:微机配上外部设备、系统电源和系统软件就构成了一个危机系统,简称系统机。
2、CPU在内部结构上由哪几部分组成?
答:寄存器阵列(RS)、算术和逻辑运算单元(ALU)、控制器、内部总线、缓冲寄存器。