8086的常见问答题
- 格式:doc
- 大小:47.00 KB
- 文档页数:7
微机原理第二章习题与分析解答1.单项选择题(1)8086工作最大方式时应将引脚MN/MX接()A.负电源 B.正电源 C.地 D.浮空分析:8086规定工作在最小方式下MN/MX接+5V,工作在最大方式下MN/MX 接地。
答案:C(2)8086能寻址内存储器的最大地址范围为()A.64KB B.1MB C.16MB D.16KB分析:8086有A0~A1920条地址总线,220=1MB。
答案:B(3)在总线周期,8086CPU与外设需交换()A.地址信息 B.数据信息 C.控制信息 D.A、B、C分析在总线周期,CPU必须发出地址信息的控制信息以后,才能实现与外设进行交换数据。
答案:D(4)8086用哪种引脚信号来确定是访问内存还是访问外设()A.RD B.WR C.M/IO D.INTA分析:引脚信号M/IO是Memory or Input Output的缩写,当M/IO=0时,用以访问外设;当M/IO=1,用以访问外设。
答案:C(5)在8086指令系统中,下列哪种寻址方式不能表示存储器操作数()A.基址变址寻址B.寄存器寻址C.直接寻址D.寄存器间接寻址分析:8086指令系统共有七种寻址方式,只有立即寻址方式和寄存器寻址方式不是表示存储器操作数的。
答案:B(6)当CPU时钟频率为5MHz,则其总线周期()A.0.8 s B.500ns C.200ns D.200μs分析:时钟周期T=1/ƒ=200ns,而一个总路线周期通常由4个T状态组成,有4╳T=4╳200ns=0.8μs.答案:A(7)8086工作在最大方式下,总路线控制器使用芯片()A.8282 B.8286 C.8284 D.8288分析:在最大方式下,系统中主要控制信号是由总路线控制器产生,而只有芯片8288才有这方面的功能。
答案:D(8)取指令物理地址=()A.(DS)╳10H+偏移地址 B.(ES)╳10H+偏移地址C.(SS)╳10H+(SP) D.(CS)╳10H+(IP)分析:每当8086CPU取指令时,总是根据CS:IP的所指的存贮单元去取指令。
第三章 8086微处理器指令系统习题集一.单项选择题1. 逻辑地址1000:2000对应的物理地址为()。
A. 1200HB. 12000HC. 2100HD. 21000H2. 下面哪个寄存器使用时的默认段寄存器为SS()。
A. AXB. BXC. SPD. SI3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在()段内寻址。
A.程序B.堆栈C.数据D.附加4.在下面四组寄存器中,第()组都可用于对存储器间接寻址方式的寄存器。
A. AX,BX,CX,IP;B. BX,SP,DX,SIC. IP,SP,BP,AXD. BP,BX,SI,DI5. 含有立即数的指令中,该立即数被存放在()。
A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中6. 用段基值及偏移量来指明内存单元地址的方式称为()。
A. 有效地址B. 物理地址C. 逻辑地址D. 相对地址7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应的段基地址放在DS中,则DS=(()。
A. 0FFFFHB. 0F47FHC. 2032HD. 0F000H8.现行数据段位于存储器BOOOOH到BOFFFH字节单元,则段寄存器DS的内容及该段长度(字节数)分别为: ()A. BOOOH,1000H B. O0OOH,OFFFHC. BOOOH,OFFFHD. BOOOH,OOFFH9.寄存器间接寻址方式中,操作数在()中。
A. 通用寄存器B. 堆栈C. 存储单元D. 段寄存器10.下列指令中,有语法错误的指令是()。
A. MOV AX,[1000H]B. LEA AL,1000HC. MOV [1000H],ALD. MOV 1000H,AX11. 堆栈的工作方式是()A.先进先出B.随机读写C.只能读出不能写入D.后进先出12. 8086/8088中除()两种寻址方式外,其它各种寻址方式的操作数均在存储器中。
习题2:1. 在8086微处理器中执行如下指令后,标志寄存器中状态标志为何值?MOV DX, 6E07HSUB DX, 800AH答:0110 1110 0000 0111– 1000 0000 0000 10101110 1101 1111 1101CF=1 PF=0 OF=1 AF=0 ZF=0 SF=12. 8086微处理器内部包括执行单元EU和总线接口单元BIU,请简要说明两个部分主要功能是什么?请指出下列哪些部分属于EU,哪些部分属于BIU?(8分)1)段寄存器CS、DS、ES、SS 2)预取指令缓冲队列3)地址指针寄存器SP、BP、SI、DI 4)指令译码及控制5)数据寄存器AX、BX、CX、DX 6)指令指针寄存器IP7)20位物理地址加法器8)总线接口控制电路9)算术逻辑单元ALU 10)标志寄存器FLAG答:总线接口部件的功能是负责与存储器、I/O端口传送数据。
实行部件的功能就是负责指令的执行。
属于EU的有___3___、___4___、___5___、___9___、___10___属于BIU的有___1___、___2___、___6___、___7___、___8___3. 下面是8086执行指令过程中读取存储器数据的一系列处理,请标明处理的先后顺序。
(6分)A.CPU发读命令;B.BIU形成20位物理地址;C.BIU将系统数据总线上的数据送到CPU内部总线,EU从内部总线获得数据;D.EU计算得到有效地址,并传送给BIU;E.存储器将被选中单元的内容送系统数据总线;F.CPU输出物理地址,经锁存后传送到地址译码器。
先后顺序为:__A__、__ D __、__ B __、__ F __、__E__、__C__。
4. 8086管理的最大存储器空间和I/O端口空间是多少,写出地址范围?为什么8086对存储器要采用分段管理?答:8086存储器空间为1MB,编址为00000H~FFFFFH8086 I/O端口空间为64KB,编址为0000H~FFFFH由于段寄存器是16位,偏移地址也是16位,而一个存储单元的物理地址是20位,引起8086需要通过加法器根据段地址和偏移地址形成20位物理地址。
8086汇编语言习题解答第一章1.1、试根据自己使用计算机的经历,列举几个必须使用或最好是使用汇编语言编制程序的事例。
1.2、试完成下列数制间的转换⑴、十进制数转换为8位二进制数十进制:100对应二进制:01100100B十进制:56对应二进制:00111000B十进制:111对应二进制:01101111B十进制:120对应二进制:01111000B十进制:70对应二进制:01000110B⑵、8位二进制数(无符号数)转换为十进制数二进制:01010101B二进制:10101010B二进制:11110000B二进制:00001111B对应对应对应对应十进制:85十进制:170十进制:240十进制:15⑶、十进制数转换为十六进制数十进制:40对应二进制:00101000B十进制:80对应二进制:01010000B十进制:105对应二进制:01101001B十进制:114对应二进制:01101101B十进制:207对应二进制:11001111B1.3、试把下面用补码表示的二进制数转换为对应的十进制真值二进制补码:01111000二进制补码:11011001二进制补码:10000001二进制补码:10001000二进制补码:00100111二进制补码:11110000对应的十进制值数真值:+120对应的十进制值数真值:-39对应的十进制值数真值:-127对应的十进制值数真值:-120对应的十进制值数真值:+39对应的十进制值数真值:-161.4、由键盘输入字符通常都是以该字符的ASCII码形式表示的。
若现在从键盘上输入十六进制数0~F,那么应如何处理才能把十六进制转换为4位二进制数0000~1111.答:将键盘输入的数0~F的ASCII码,每输入一个字符,减去30H 后,再存入内存,这样就完成了把从键盘上输入的十六进制ASCII码转换为4位二进制数0000~1111.1.5、试分别判断下列各组数据中哪个数据最大?哪个最小?①、A=0.101B②、A=1011BB=0,101DB=1011D1C=0,101HC=1011H3答:第①组:A=1某2+1某2=0.625B=0.101C=1某16+16=0.0625+0.00024414=0.0627441413所以A最大,C最小第②组,B最大,A=B最小1.6、现有一个二进制数10110110.若将该数看着是无符号数、原码表示的带符号数、补码表示的带符号数,它对应的十进制数的真值是多少答:10110110.的无符号数的十进制是:+182;10110110.的原码带符号数的十进制是:-5410110110.补码表示的带符号数的十进制是:+741.7、下列各组数据均为十进制数,先将各数据转换为补码表示的带符号数,然后用补码的加减运算分别完成下列各小题,并用十六进制数形式回答运算结果。
第三章 8086微处理器指令系统习题集一.单项选择题1. 逻辑地址1000:2000对应的物理地址为()。
A. 1200HB. 12000HC. 2100HD. 21000H2. 下面哪个寄存器使用时的默认段寄存器为SS()。
A. AXB. BXC. SPD. SI3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在()段内寻址。
A.程序B.堆栈C.数据D.附加4.在下面四组寄存器中,第()组都可用于对存储器间接寻址方式的寄存器。
A. AX,BX,CX,IP;B. BX,SP,DX,SIC. IP,SP,BP,AXD. BP,BX,SI,DI5. 含有立即数的指令中,该立即数被存放在()。
A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中6. 用段基值及偏移量来指明内存单元地址的方式称为()。
A. 有效地址B. 物理地址C. 逻辑地址D. 相对地址7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应的段基地址放在DS中,则DS=(()。
A. 0FFFFHB. 0F47FHC. 2032HD. 0F000H8.现行数据段位于存储器BOOOOH到BOFFFH字节单元,则段寄存器DS的内容及该段长度(字节数)分别为: ()A. BOOOH,1000H B. O0OOH,OFFFHC. BOOOH,OFFFHD. BOOOH,OOFFH9.寄存器间接寻址方式中,操作数在()中。
A. 通用寄存器B. 堆栈C. 存储单元D. 段寄存器10.下列指令中,有语法错误的指令是()。
A. MOV AX,[1000H]B. LEA AL,1000HC. MOV [1000H],ALD. MOV 1000H,AX11. 堆栈的工作方式是()A.先进先出B.随机读写C.只能读出不能写入D.后进先出12. 8086/8088中除()两种寻址方式外,其它各种寻址方式的操作数均在存储器中。
第3章8086寻址⽅式和指令系统-题第3章8086寻址⽅式和指令系统⼀、单项选择题(共50⼩题)1、指令MOV AX,[3070H]中源操作数的寻址⽅式为()A、寄存器间接寻址B、⽴即寻址C、直接寻址D、变址寻址2、DS是()A、数据段寄存器B、代码段寄存器C、堆栈段寄存器D、附加数据段寄存器3、CF是()A、进位标志位B、辅加进位标志位C、符号标志位D、全零标志位4、SS是_()A、数据段寄存器B、代码段寄存器C、堆栈段寄存器D、附加数据段寄存器5、指令MOV [BX],AX中A、⽬的操作数是寄存器操作数B、源操作数是存储器操作数C、⽬的操作数是存储器操作数D、源操作数是⽴即操作数6、CS是()A、数据段寄存器B、代码段寄存器C、堆栈段寄存器D、附加数据段寄存器B、源操作数存于堆栈段C、⽬的操作数存于数据段D、⽬的操作数存于堆栈段8、BX是()A、8位通⽤寄存器B、16位通⽤寄存器C、16位段寄存器D、16位变址寄存器9、ZF是()A、进位标志B、⽅向标志C、符号标志D、零标志10、IP是()A、指令指针寄存器B、堆栈指针寄存器C、通⽤寄存器D、变址寄存器11、SI是()A、8位通⽤寄存器B、16位通⽤寄存器C、16位段寄存器D、指令指针寄存器12、DL是()A、16位段寄存器B、16位通⽤寄存器C、8位通⽤寄存器D、16位标志寄存器13、指令IDIV BX 的含义是()A、(AX)/(BX)B、(DX:AX)/(BX)C、(AL)/(BX)D、(AL)/(BL)B、DXC、BPD、DI15、设SS=2000H,执⾏下列程序段后SP=()MOV SP,2000HPUSH AXA、21FFEHB、20000HC、22000HD、22002H16、寄存器间接寻址⽅式中,操作数在( )中。
A、通⽤寄存器B、堆栈C、内存单元D、段寄存器17、JMP WORD PTR[DI]是( )A、段内间接转移B、段间间接转移C、段内直接转移D、段间直接转移18、堆栈指针SP的作⽤是( )。
《计算机组成原理》第二章8086CPU练习题及答案选择题目:1. 运算器的主要功能是进行( C )。
A. 逻辑运算B. 算术运算C. 逻辑运算和算术运算D. 以上均不正确2. 下面寄存器为8位的是( B )A. IPB. AHC. SPD. DX3. 下列寄存器中,只能按位进行访问的是(B )。
A. AXB. FLAGC. CXD.BP4 CPU内部的指令指针寄存器IP的作用是( C )A. 用于存放某特定程序的地址指针B. 由于存放某条指令的地址C. 用于存放下一条要执行指令的偏移地址D. 用于存放下一条要执行指令的段地址5. 在补码运算时,如果运算结果为负,则下列标志位一定为1的是(A )A. SFB. ZFC. CFD. PF6. 8086CPU可寻址的最大内存空间为(B )A. 64KBB. 1MBC. 4MBD. 64MB7. 8086CPU中,可用于对内存单元进行间接寻址的寄存器有(B )个。
A. 2C. 6D. 88. 标志寄存器中可用于指令测试的状态为包括( D )。
A. CF、ZF、DF和PFB. CF、ZF、DF和OFC. CF、ZF、OF和PFD. CF、ZF、DF和IF9. 用来表示堆栈指针的寄存器是(D )A. IPB. BPC. SPD. SS10. 存储器物理地址形成规则是(B )A. 段地址+偏移地址B. 段地址左移4位+偏移地址C. 段地址×10+偏移地址D. 段地址×16H+偏移地址11. 关于8086微机系统中的存储器分段管理,下面说法正确的是(C )。
A. 各逻辑段的起始地址被称为该段的段地址B. 各逻辑段起始地址的低16位被称为该段的段地址C. 各逻辑段的起始地址必须能被16整除D. 各逻辑段之间相互独立,不能重叠。
12. 某存储存储单元的逻辑地址为1200H:0100H,下列说法中错误的是( D )。
A. 该存储单元的段地址是1200HB. 该存储单元的偏移地址是0100HC. 该存储单元的物理地址是12100HD. 该存储单元的物理地址是1300H13. 8086CPU地址总线和可寻址的存储空间分别为(A )。
8086/8088 16位微处理器习题解答1.试说明8086/8088CPU中有哪些寄存器?各有哪些用途?答:寄存器组有(1)数据寄存器,含AX、BX、CX、DX四个通用寄存器,用来暂时存放计算过程中所遇到的操作数,结果和其它信息。
(2)指针及变址寄存器,含SP、BP、SI、DI四个十六位寄存器,它们可以像寄存器一样在运算过程中存放操作数只能以字为单位使用。
还用来在段内寻址时提供偏移地址。
(3)段寄存器,含CS、DS、SS、ES,用来专门存放段地址。
(4)控制寄存器,包括IP和PSW两个16为寄存器。
IP是指令指针寄存器,用来存放代码段中的偏移地址。
PSW为程序状态字寄存器,由条件码标志和控制标志构成。
条件码标志用来纪录程序运行结果的状态信息。
包括OF、SF、ZF、CF、AF、PF。
控制标志位有三个寄存器DF、IF、TF组成。
2.是说明8086/8088CPU中标志位寄存器中各标志位的意义?答:OF溢出标志,在运算过程中,如操作数超出了机器能表示的范围则置1,否则置0。
SF 符号标志,运算结果为负时置1,否则置0。
ZF零标志,运算结果为0置1,否则置0 。
CF进位标志,记录运算是最高有效位产生的进位。
AF辅助进位标志,记录第三位的进位情况。
PF奇偶标志位,用来为机器中传送信息时可能产生的出错情况提供检验条件,当结果操作数中的1的个数为偶时置1。
DF方向标志位,在串处理指令中控制处理信息的方向。
当DF=1时,每次操作后变址寄存器减量,这样就使串处理从高地址向低地址方向处理。
IF中断标志,当IF=1时,允许中断,否则间断中断。
TF陷阱标志,用于单步操作方式,当TF为1时,每条指令执行完后产生陷阱,由系统控制计算机。
当TF为0时,CPU正常工作不产生陷阱。
3.哪些操作只能隐含使用某个段寄存器,而不能用其它段寄存器代替?哪些操作出隐含使用某个段寄存器外,还可以使用其它段寄存器?答:计算程序的地址隐含使用CS,正在执行的程序隐含使用SS,而数据的地址隐含使用ES 和DS。
(1)8086 CPU 是16位的微处理器,有16位数据线和20位地址线。
(2)8088 CPU 是准16位微处理器,外部数据线为8位。
(3)8086 从功能上为分为总线接口模块BIU 和执行部件EU 两部分。
(4)8086 CPU 有8个通用寄存器,分别是:AX,BX,CX,DX;SP ,BP ,SI,DI,其中AX,BX,CX,DX 每四个可以分为两个8位寄存器。
(5)8086 CPU 有4个段寄存器,分别是CS (代码段寄存器),DS (数据段寄存器),ES (附加数据段寄存器)SS (堆栈段寄存器)(6)已知CS=1200H ,DS=ES=3200H ,SS=2300H ,IP=89ABH ,请求出下一条要取出的指令实地址?解:指令的物理地址=(CS )×10H+(IP )指令的物理地址=1200H ×10H+89ABH=1A9ABH(7)同(6)段寄存器设置,某数据的偏移地址为5888H ,请求出该数据的绝对地址?解:数据的绝对地址=(DS )×10H+偏移地址数据的绝对地址=3200H ×10H+5888H=37888H(8)若8088 CPU 要进行IO 端口读操作,则检测到其引脚R DT RD M IO /,,/ ,是高电平 还是低电平? 解:高电平,高电平,低电平(9)若8088 CPU 读入数据时测得第7到第16脚的电压是高低高低低低低高高低,请问读 入的数据是多少?(10)8086/8088 CPU 最小组态下的存储器读周期时序图。
(此三处请自行查书第四章)8086/8088 CPU 最大组态下的存储器读周期时序图。
8088在最大组态时的I/O 读周期和I/O 写周期的时序。
(11)下面符号命名正确的是?①AGAIN ②?123(B)③1point (B)④CS (C)⑤100%(AB)命名规则:A)合法符号:字母(不分大小写)、数字及特殊符号(“?”,“@”,“_”,“$”,“·”)B)名字可以用处数字外所有的合法符号开头,但如果是用到符号“·”,那么这个符号必须是第一个字符C)不能把保留字用作名字(如CPU的寄存器名、指令助记符等)D)名字的有效长度不超过31个英文字符(12)一编程题要计算两个4字节变量的和,如何定义被加数X=12345678H,加数Y=90ABCDEFH、和SUM,共3个变量?解:X DB 78H,56H,34H,12H X DD 12345678HY DD 90ABCDEFHSUM DB 4 DUP(?)(13)如何用变量定义一个字符串’I love China!’STRING DB ’I love China!’(14)MOV AL,BUFF AL=1MOV AL,BUFF+2 AL=45HMOV AX,OFFSET BUFF AX=0MOV AX,WORD PTR BUFF Ah=2301H(15)一编程题要计算两个字节的和,要如何定义被加数X、加数Y、和SUM,共3个变量?X DB ? Y DB ? SUM DW ?(16)一编程题要给某计算结果预留100个字节空间,要如何定义变量?RESULT DB 100 DUP(?)/RESULT DW 50 DUP(?)(17)判断下列指令是否正确,并说明原因。
8086的常见问题1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU)和总线接口部件(BIU)指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU 控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
3.8086CPU中有哪些寄存器?各有什么用途?答:指令执行部件(EU)设有8个16位通用寄存器AX、BX、CX、DX、SP、BP、SI、DI,主要用途是保存数据和地址(包括内存地址和I/O端口地址)。
其中AX、BX、CX、DX主要用于保存数据,BX可用于保存地址,DX还用于保存I/O端口地址;BP、SI、DI主要用于保存地址;SP用于保存堆栈指针。
标志寄存器FR用于存放运算结果特征和控制CPU操作。
BIU中的段寄存器包括CS、DS、ES、SS,主要用途是保存段地址,其中CS代码段寄存器中存放程序代码段起始地址的高16位,DS数据段寄存器中存放数据段起始地址的高16位,SS堆栈段寄存器中存放堆栈段起始地址的高16位,ES扩展段寄存器中存放扩展数据段起始地址的高16位。
指令指针寄存器IP始终存有相对于当前指令段起点偏移量的下一条指令,即IP总是指向下一条待执行的指令。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
逻辑地址由段基址和偏移地址两部分构成,都是无符号的16位二进制数,程序设计时采用逻辑地址,也是1MB。
6.8086系统中的存储器为什么要采用分段结构?有什么好处?答:8086CPU中的寄存器都是16位的,16位的地址只能访问64KB的内存。
086系统中的物理地址是由20根地址总线形成的,要做到对20位地址空间进行访问,就需要两部分地址,在8086系统中,就是由段基址和偏移地址两部分构成。
这两个地址都是16位的,将这两个地址采用相加的方式组成20位地址去访问存储器。
在8086系统的地址形成中,当段地址确定后,该段的寻址范围就已经确定,其容量不大于64KB。
同时,通过修改段寄存器内容,可达到逻辑段在整个1MB存储空间中浮动。
各个逻辑段之间可以紧密相连,可以中间有间隔,也可以相互重叠(部分重叠,甚至完全重叠)。
采用段基址和偏移地址方式组成物理地址的优点是:满足对8086系统的1MB存储空间的访问,同时在大部分指令中只要提供16位的偏移地址即可。
7.8086存储器中存放数据字时有“对准字”和“非对准字”之分,请说明它们的差别。
答:一个16位的数据字是按照低地址存放低位数据、高地址存放高位数据来存放的。
若16位数据的低8位存放在偶地址,则该数据字就是“对准字”,否则就是“非对准字”。
主要差别是CPU读取和存储数据字时,如果是对准字,只需要一次读写操作即可,而非对准字就需要两次读写操作才能实现一个数据字的存取。
9.在某系统中,已知当前(SS)=2360H,(SP)=0800H,那么该堆栈段在存储器中的物理地址范围是什么?若往堆栈中存入20个字节数据,那么SP的内容为什么值?答:(SS)×10H+(SP)=23600H+0800H=23E00H,堆栈段在存储器中的物理地址范围是23600H~23E00H。
若往堆栈中存入20个字节数据,那么SP的内容为0800H-14H=07ECH。
(20的十六进制为14H)。
10.已知当前数据段位于存储器的B4000H到C3FFFH范围内,则段寄存器DS的内容为多少?答:段寄存器DS的内容为B4000H。
11.8086系统中为什么一定要有地址锁存器?需要锁存哪些信息?答:由于8086CPU受芯片封装的限制,只有40个管脚,所以地址线和数据线只能采用复用的方式共同使用某些管脚。
对存储器进行访问时,在读取数据或写入数据时,存储器芯片要求在这个过程中地址信息必须稳定提供给存储器,而由于8086CPU地址线和数据线是复用的,就不可能在同一时刻具有地址和数据的两种功能。
这就需要在CPU提供地址信息时,将地址锁存起来,以保证下一个时刻当这些复用的管脚起着数据线的功能时,存储器有正确的地址信息。
要锁存的信息包括这些复用管脚的地址和BHE等信号。
12.8086读/写总线周期各包括最少几个时钟周期?什么情况下需要插入等待周期TW?插入多少个TW取决于什么因素?答:8086读/写总线周期各包括最少四个时钟周期。
在系统中增加等待周期TW的一般情况是:当CPU提供了地址后,由于外设或存储器的读出或写入时间较慢,不能与CPU的速度匹配,就需要插入等待周期TW,等待CPU能从外设或存储器将数据正确地读出或写入为止。
显然,插入的等待周期TW的个数取决于外设或存储器的取出或写入时间。
第4章8086汇编语言程序设计1.编写8086汇编语言程序,将寄存器AX的高8位传送到寄存器BL,低8位传送到寄存器DL。
答:CODE SEGMENTASSUME CS:CODESTART: MOV BL,AHMOV DL,ALMOV AX,4C00HINT 21HCODE ENDSEND STAR2.将寄存器DX的内容按从低位到高位的顺序分成4组,并将各组数分别送到寄存器AL,BL,CL和DL中。
(例如:(DX)=0ABCDH,分成四组(DL)=0AH,(CL)=0BH,(BL)=0CH,(AL)=0DH)答:CODE SEGMENTASSUME CS:CODESTART: MOV AX,DXAND AL,0FHMOV BL,DLMOV CL,4SHR BL,CLAND AH,0FHMOV CL,4SHR DH,CLMOV CL,AHMOV AH,4CHINT 21HCODE ENDSEND START4.试统计9个数中偶数的个数,并将结果在屏幕上显示。
答:DATA SEGMENTBUFF DB 3BH,47H,8DH,-75,0AH,69,-2EH,0CCH,200 CODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET BUFFMOV CX,9XOR DL,DLA1: SHR BYTE PTR [SI],1JC NEXTINC DLNEXT: INC SILOOP A1ADD DL,30HMOV AH,2MOV AX,4C00HINT 21HCODE ENDSEND START5.试将一串16位无符号数加密,加密方法是每个数乘以2。
(不考虑进位)答:DATA SEGMENTMEM DW 20 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV CX,LENGTH MEMLEA BX,MEMAA1: MOV AX,[BX]ADD AX,AX ;或MUL AX,2 或SHL AX,1或SAL AX,1MOV [BX],AXADD BX,2LOOP AA1MOV AX,4C00HINT 21HCODE ENDSEND START第五章存储器原理与接口2.什么是RAM和ROM?RAM和ROM各有什么特点?答:RAM是随机存储器,指计算机可以随机地、个别地对各个存储单元进行访问,访问所需时间基本固定,与存储单元的地址无关。
ROM是只读存储器,对其内容只能读,不能写入。
与RAM相比,其信息具有非易失性,即掉电后,ROM中的信息仍会保留。
3.什么是多层次存储结构?它有什么作用?答:存储器的性能是计算机性能的最主要指标之一,其目标是大容量、高速度和低成本,因此应该在系统结构的设计上扬长避短,采用多层存储结构构成一个较为合理的存储系统。
多层存储结构是一个金字塔的结构,距塔尖(即CPU)越近速度越快,容量越小,单位价格也较贵;反之速度较慢,容量较大,单位价格也较便宜。
其作用是获得最佳性价比。
5.主存储器的主要技术指标有哪些?答:主存储器的主要技术指标有主存容量、存储器存取时间、存储周期和可靠性。
7.若用1K×1位的RAM芯片组成16K×8位的存储器,需要多少片芯片?在CPU的地址线中有多少位参与片内寻址?多少位用做芯片组选择信号?答:要128片。
A1~A9共10位参与片内寻址,其余可用于片选信号。
第七章5.在某应用系统中,计数器/定时器8253地址为310H~316H,定时器0作为分频器(N为分频系数),定时器2作为外部事件计数器,编写初始化程序框架。
答:MOV DX,316HMOV AL,控制字OUT DX,ALMOV DX,310HMOV AL,分频系数低8位OUT DX,ALMOV AL,分频系数高8位OUT DX,ALMOV DX,316HMOV AL,控制字OUT DX,ALMOV DX,314HMOV AL,计数常数低8位OUT DX,ALMOV AL,计数常数高8位OUT DX,AL。