微机原理2答案3
- 格式:doc
- 大小:623.51 KB
- 文档页数:35
习题答案1-1解释和区别下列名词术语。
(1). 微处理器μP,微计算机μC,微处理器系统μPS。
(5). 位、字节、字和双字。
(7). RAM和ROM(8). I/O接口和I/O设备。
(9). 芯片总线、片总线、内总线和外总线。
答:(1). 把CPU的复杂电路,包括运算器和控制器作在一片或几片大规模集成电路的半导体芯片上,这种集成电路叫微处理器μP。
微处理器为核心,配上RAM、ROM,I/O接口及有关辅助电路组成的微型化的主计算机装置称为微计算机μC。
微处理器为核心构成的专用系统称为微处理器系统μPS。
(5)一个二进制的位称作位、8个相邻二进制位称作字节、2个字节称作字,2个字(4个字节)称作双字。
(7)能进行随即读写操作的存储器称作RAM。
只读存储器叫ROM。
(8)输入/输出接口电路称作I/O接口,通过I/O接口接入的外部设备如监视器,键盘、鼠标称作I/O设备。
(9)位于CPU芯片内部,用来实现CPU内部各功能单元电路之间的相互连接和信号的传递的总线叫芯片总线。
片总线是微计算机主板或单板微计算机上以CPU芯片为核心,芯片与芯片间连接的总线。
内总线指微计算机系统中实现插件板之间的连接的总线。
如IBM PC 的PC总线,PC-XT总线,PCI、ISA总线等等。
外总线用于系统之间的连接,完成系统与系统之间通信的总线。
如RS-232,IEE488、USB等等。
1-6 将下列十进制数转换为二进制数、十六进制数和BCD数(1)124.625(6)268.875解:(1)124=01111100B=7CH,0.625×16=10,所以0.625=0.AH=0.1010B∴124.625=7C.AH=01111100.1010B=000100100100.011000100101BCD(2)268=256+12=100001100B=10CH,0.875×16=14,∴0.875=0.EH=0.1110B.∴268.875=10C.EH=100001100.111B=001001101000.100001110101BCD1-7 用16位二进制数表示出下列十进制数的原码、反码和补码。
第2章习题参考答案18086CPU由哪两部分构成它们的主要功能是什么答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成。
其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成。
其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处8086CPU内部的并行操作体现在哪里答:8086CPU的预取指令队列由6个字节组成。
按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
:从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取并送到指令队列。
3. 8086CPU中有哪些寄存器各有什么用途答:CPU有14个内部寄存器,可分为3大类:通用寄存器、控制寄存器和段寄存器。
通用寄存器是一种面向寄存器的体系结构,操作数可以直接存放在这些寄存器中,既可减少访问存储器的次数,又可缩短程序的长度,提高了数据处理速度,占用内存空间少。
指令执行部件(EU)设有8个通用寄存器:AX:累加器,一般用来存放参加运算的数据和结果,在乘、除法运算、I/O操作、BCD数运算中有不可替代的作用BX:基址寄存器,除可作数据寄存器外,还可放内存的逻辑偏移地址CX:计数寄存器,既可作数据寄存器,又可在串指令和移位指令中作计数用DX:DX除可作通用数据寄存器外,还在乘、除法运算、带符号数的扩展指令中有特殊用途#源变址寄存器SI:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中,也可放数据目标变址寄存器DI:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中,也可放数据基址指针BP:用于存放内存的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中堆栈指针SP:用于存放栈顶的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中控制寄存器包括指令指针寄存器IP和标志寄存器FLAG:IP用来指示当前指令在代码段的偏移位置。
3.2设(DS)=6000H,(ES)=2000H,(SS)=1500H,(Si)=00A0H,(BX)=0800H,(BP)=1200H,数据变量VAR为0050H. 请分别指出下列各条指令源操作数的寻址方式?它的物理地址是多少?(1) MOV AX,BX (2) MOV DL,80H(3) MOV AX, VAR (4) MOV AX,VAR[BX][SI](5) MOV AL,‘B' (6) MOV DI, ES: [BX](7) MOV DX,[BP] (8) MOV BX,20H[BX]解: (1)寄存器寻址。
因源操作数是寄存器,故寄存器BX就是操作数的地址.(2)立即寻址。
操作数80H存放于代码段中指令码MOV之后。
(3)直接寻址。
(4)基址一变址一相对寻址.操作数的物理地址=(DS) × 16+(SI)+(BX)+VAR= 60000H+00A0H+0800H+0050H=608F0H(5)立即寻址(6)寄存器间接寻址.操作数的物理地址 = (ES) × 16+(BX)= 20000H+0800H = 20800H(7)寄存器间接寻址。
操作数的物理地址= (SS) × 16+(BP)= 15000H+1200H= 16200H(8)寄存器相对寻址.操作数的物理地址=(DS) × 16+(BX)+20H= 60000H+0800H+20H= 60820H3.3 假设(DS)= 212AH,(CS)= 0200H,(IP)= 1200H,(BX)= 0500H,位移量DATA=40H,(217A0H) =2300H,(217E0H)=0400H,(217E2H) =9000H 试确定下列转移指令的转移地址.(1) JMP BX(2) JMP WORD PTR[BX](3) JMP DWORD PTR[BX+DATA]解:转移指令分为段内转移和段间转移,根据其寻址方式的不同,又有段内的直接转移和间接转移,以及段间的直接转移和间接转移地址。
第2章8086微处理器及其系统教材习题解答1. 8086 CPU 由哪两部分构成,它们的主要功能是什么?在执行指令期间,EU 能直接访问存储器吗,为什么?【解】8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。
执行部件由内部寄存器组、算术逻辑运算单元(ALU)与标志寄存器(FR)及内部控制逻辑等三部分组成。
寄存器用于存储操作数和中间结果;算术逻辑单元完成16位或8位算术逻辑运算,运算结果送上ALU内部数据总线,同时在标志寄存器中建立相应的标志;内部控制逻辑电路的主要功能是从指令队列缓冲器中取出指令,对指令进行译码,并产生各种控制信号,控制各部件的协同工作以完成指令的执行过程。
总线接口部件(BIU)负责CPU与存储器、I/O设备之间传送数据、地址、状态及控制信息。
每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。
EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU 申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。
2. 8086CPU与传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点?【解】8086 CPU与传统的计算机相比增加了指令队列缓冲器,从而实现了执行部件(EU)与总线接口(BIU)部件的并行工作,因而提高了8086系统的效率。
3. 8086 CPU 中有哪些寄存器,各有什么用途?【解】8086共有8个16位的内部寄存器,分为两组:①通用数据寄存器。
四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。
用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。
AX(AH、AL)累加器。
有些指令约定以AX(或AL)为源或目的寄存器。
实际上大多数情况下,8086的所有通用寄存器均可充当累加器。
BX(BH、BL)基址寄存器。
微机原理第二章习题参考答案微机原理第二章作业参考答案:1.(2字节)a.指由8个二进制位组成的通用基本单元(6时钟周期)b.是cpu指令执行时间的刻度(10软件配置管理空间)c.cpu所要出访的存储单元数,与cpu地址总线条数有关(11实际地址)d.唯一能代表存储空间每个字节单元的地址,用5位16进制数表示(7总线周期)e.cpu执行访问存储器或i/o操作所花时间(12逻辑地址)f.由段基址和段偏转地址共同组成,均用4十一位16十进制则表示(4基本指令继续执行时间)g.指寄存器乘法指令继续执行所花掉时间(3指令)h.顺利完成操作方式的命令(1字长)i.指cpu在交换、加工、存放信息时信息位的基本长度(5指令执行时间)j.各条指令执行所花时间,不同指令值不一(8cache)k.为减轻cpu与主存储器间互换数据的速度瓶颈而建立的高速缓冲存储器(9虚拟存储器)l.cpu执行程序时看见的一个速度吻合内存却具有外存容量的假想存储器2.(1)mhz频率单位,可以用来表示cpu的主频1mhz=1000000hz(2)ghz频率单位,可以用来表示cpu的主频1ghz=1000000000hz(3)μs时间单位,可以用来表示基本指令执行时间1μs=10s(4)mips每秒百万条指令,用来表示基本指令执行速度(5)kb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1kb=2bytes(6)mb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1mb=2bytes(7)gb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1gb=2bytes(8)tb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1tb=2bytes3.eu的共同组成部件:(3)alu(7)状态标志寄存器(9)掌控单元(12)通用寄存器组与biu的共同组成部件:(1)地址部件au(2)段界检查器(4)20十一位地址产生器(5)20十一位物理地址加法器(6)指令队列(8)总线掌控逻辑(10)段寄存器组(11)指令指针4.标志sf(b符号标志)cf(d位次标志)af(h辅助位次标志)df(i方向标志)tf(a陷阱标志)of(c外溢标志)pf(f奇偶标志)if(g中断容许标志)zf(e零标志)类型sssccsscs为0时则表示的状态两个带符号数运算结果就是正数两个并无符号数经alu运算后并无位次或者借位产生两个数运算时,两个高4十一位运算并无位次或者借位产生数据串成操作方式的增量地址为自动递减正常调试两个带符号数运算后没产生外溢运算结果数据高8位中二进制存有奇数个1中断屏蔽数据运算时结果不为零403020?6107.首地址pa=62d87h末地址pa=62d87h+28h(则表示40字节)-1h=62daeh8.实际地址:99a40h9.实际地址:3ba00h10填写下列个状态下的有效信号状态总线操作类型t1t2t3t4最小模式下总线存储器读操作最小模式下总线存储器写操作11.特点方式最小模式最大模式12.00130h:00131h:00135h:00136h:13.0dah31h7fh5ehmn/mx引脚高电平低电平处理器个数12个以上总线控制信号的产生8086828834h00230h:2dh00231h:0abh00232h:00233h:67h14.55h00330h:20h00331h:00332h:45h00333h:20h00334h:53h00335h:20h00336h:54h00337h:20h00338h:43h15.(1)ds:11a7es:11a7ss:21becs:31b8ds,es段顶:11a70hss段顶上:21be0hss段底:22ca8hcs段顶上:31b80hds,es段底:21a6fhcs段底:41b7fh(2)of=0df=0if=1sf=0zf=0zf=0pf=0cf=016.5ch20a28h:00h20a29h:7ah20a2ah:20a2bh:20a2ch:20a2dh:20a2eh:20a2fh:20a30h:20a31h:53h42h0ffh12h00h5bh0ah入栈完毕时,(ss)=20a0h(ip)=0028h17.8086系统中:(1)8284a时钟产生器的作用是:为8086cpu提供时钟,产生cpu所需的系统时钟信号(2)8282/8283地址锁存器的作用是:锁存8086地址总线中的信息(3)8286/8287总线收发器的作用是:传送8086数据总线中的信息(4)8288总线控制器的促进作用就是:在最小工作模式下产生8086系统所需的掌控信号18.8086寻址i/o端口时,使用16条地址线,可寻址32k个字端口,或64k个字节端口。
作业二的答案1.8086存储器为什么要采用分段结构,每段的容量有什么要求,为什么?答:8086CPU拥有20位的地址总线,可访问的最大存储容量为1MB,其物理地址的范围为:00000H~FFFFFH;而8086CPU的内部的寄存器只有16位,能访问最大存储空间为64KB,物理地址范围为:0000H~FFFFH。
采用分段管理的办法可扩大对存储器的寻址范围,以适应超过16位的存储器物理结构。
于是将1MB存储器空间分成许多逻辑段,并规定逻辑段不超过64KB,只能从低4位为0000B的地址开始。
这样每个存储单元就可以用“段地址:偏移地址”的逻辑地址来表示其准确的物理位置,而且段地址和偏移地址就都可以用16位寄存器表达。
2.8086系统中,段寄存器CS=1200H,指令指针寄存器IP=FF00H,试写出指令的逻辑地址和物理地址,指向这物理地址的CS值和IP值是唯一的吗?答:逻辑地址1200H:FF00H物理地址1200H×16 + FF00H =12000H + FF00H =21F00H指向这个物理地址的CS值和IP值不是唯一的。
例如:CS=2100H,IP=0F00H。
3.8086的1MB分成两个512KB存储体的好处是什么?8088的1MB为什么不分?答:8086的1MB分成两个512KB存储体的好处就是CPU既可以单独对其中的一个存储体读/写8位数据,也可以对两个存储体中相邻的单元读/写16位数据。
也就是说8086CPU 既能进行字节操作也能进行字操作。
8088CPU的1MB存储器没有必要划分成两个512KB的存储体,是因为它的数据总线宽度为8位,在一个总线周期里不能进行16位的数据读写。
4.若当前SS=3500H,SP=0800H,请写出堆栈段在存储器中的物理地址范围。
若此时入栈10个字节,SP的内容是什么?若再出栈6个字节,SP为什么值?答:堆栈在存储器里的起始物理地址为3500H×10H+0000H=35000H,堆栈段的容量为64KB,所以栈底的物理地址为3500H×10H + FFFFH=35000H + FFFFH = 44FFFH,所以堆栈段在存储器里的物理地址范围为35000H~44FFFH。
第2章习题参考解答1.8086处理器内部一般包括哪些主要部分?8086处理器与其他处理器一样,其内部有算术逻辑部件、控制与定时部件、总线与总线接口部件、寄存器阵列等。
按功能结构可分为两部分,即总线接口单元(BIU)与执行单元(EU)。
BIU主要包括段寄存器、内部通信寄存器、指令指针、6字节指令队列、20位地址加法器和总线控制逻辑电路。
EU主要包括通用寄存器阵列、算术逻辑单元、控制与定时部件等。
2.什么是总线? —般微机中有哪些总线?所谓总线是指电脑中传送信息的一组通信导线,它将各个部件连接成—个整体。
在微处理器内部各单元之间传送信息的总线称为片内总线;在微处理器多个外部部件之间传送信息的总线称为片外总线或外部总线。
外部总线又分为地址总线、数据总线和控制总线。
随着电脑技术的发展,总线的概念越来越重要。
微机中常用的系统总线有PC总线、ISA总线、PCI总线等。
3.什么是堆栈?它有什么用途?堆栈指针的作用是什么?堆栈是一个按照后进先出的原则存取数据的部件,它是由栈区和栈指针组成的。
堆栈的作用是:当主程序调用子程序、子程序调用子程序或中断时转入中断服务程序时,能把断点地址及有关的寄存器、标志位及时正确地保存下来,并能保证逐次正确地返回。
堆栈除了有保存数据的栈区外,还有一个堆栈指针SP,它用来指示栈顶的位置。
假设是“向下生成”的堆栈,随着压入堆栈数据的增加,栈指针SP的值减少。
但SP始终指向栈顶。
4.在8086 CPU中,FR寄存器有哪些标志位?分别说明各位的功能。
8086 CPU中设置了一个16位的标志寄存器FR,其中用了9位,还有7位保留。
9位中有3位作为控制标志,6位作为状态标志。
IF:中断控制标志。
当IF=1时,允许可屏蔽中断请求;当IF=0时,禁止可屏蔽中断请求。
TF:单步运行标志。
当TF=1,单步运行;TF=0,连续运行程序。
DF:方向标志。
当DF=0,串操作时地址按增量修改;DF=1,地址按减量修改。
《微处理器系统原理与嵌入式系统设计》第二章习题解答2.2 选择题(1) 下列无符号数中最小的数是( A )。
A.H(1,1011,0101)(01A5)B.B(3764)C.D(2590)D.O(2) 下列无符号数中最大的数是( B )。
A.B(10010101)B.O(227)C.H(96)D.D(143)(3) 在机器数( A )中,零的表示形式是唯一的。
A.补码B.原码C.补码和反码D.原码和反码(4) 定点8位字长的字,采用2的补码形式时,一个字所能表示的整数范围为( A )。
A.-128~+127 B.-127~+127C.-129~+128 D.-128~+128(5) 若下列字符码(ASCII)中有奇偶校验位,但没有数据错误,那么采用偶校验的字符码是( D )。
A.B.C. D.(6) 单纯从理论出发,计算机的所有功能都可以交给硬件实现。
而事实上,硬件只实现比较简单的功能,复杂的功能则交给软件完成。
这样做的理由是( BCD )。
A.提高解题速度B.降低成本C.增强计算机的适应性,扩大应用面D.易于制造(7) 编译程序和解释程序相比,编译程序的优点是( D ),解释程序的优点是( C )。
A.编译过程(解释并执行过程)花费时间短B.占用内存少C.比较容易发现和排除源程序错误D.编译结果(目标程序)执行速度快(8) 计算机的存储器采用分级存储体系的主要目的是( D )。
A.便于读写数据B.减小机箱的体积C.便于系统升级D.解决存储容量、价格和存取速度之间的矛盾(9) 在多级存储体系中,cache-主存结构的作用是解决( D )问题。
A.主存容量不足B.主存与辅存速度不匹配C.辅存与CPU速度不匹配D.主存与CPU速度不匹配(10) 下列说法中正确的是( CD )。
A.虚拟存储器技术提高了计算机的速度B.cache与主存统一编址,cache的地址空间是主存地址空间的一部分C.主存是由易失性的随机读写存储器构成的D.cache的功能全部由硬件实现(11) 在CPU与外设之间设计接口电路的目的主要有( ABCD )。
《微机原理》习题2 (P40)参考答案2.1为什么说计算机只能“识别”二进制数,并且计算机内部数的存储及运算也都采用二进制?解:因为二进制是计算机刚出现时就奠定的计算机内的进位记数制,之所以选用它来表示计算机内的信息,是因为两个状态的物理器件容易制造和实现,将这两个状态抽象为数字就可用0、1来表示;此外,采用二进制的运算规则较为简单,容易实现。
2.2在进位记数制中,“基数”和“位权(或权)”的含义是什么?一个以b为基数的任意进制数N,它按位权展开式求值的一般通式是如何描述的?解:在进位记数制中,常常要用“基数”(或称底数)来区别不同的数制,而进位制的基数就是该进位制所用的字符或数码的个数。
在一个进位记数制中,每一位都有特定的权,称为位权或简称权。
每个位权由基数的 n次幂来确定。
数N的按位权展开式的一般通式为:N=±(ki×b i)式中,ki为第i位的数码;b为基数;b i为第位的位权;n为整数的总位数;m 为小数的总位数。
2.3将下列十进制数分别转化为二进制数。
(1)147 (2)4095 (3)0.625 (4) 0.15625解:(1) 147 D=10010011 B(2) 4095 D=111111111111 B(3) 0.625 D=0.101 B(4) 0.15625 D=0.00101 B2.4将下列二进制数分别转换为BCD码。
(1)1011 (2) 0.01 (3) 10101.101 (4) 11011.001解:(1) 1011 B=1×23+0×22+1×21+ 1×20=11 D=(0001 0001)BCD(2) 0.01 B=1×2-2=0.25 D=(0.0010 0101)BCD(3) 10101.101 B =1×24+1×22+1×20+1×2-1+1×2-3 =21.625 D=(0010 0001.0110 0010 0101)BCD(4) 11011.001B=1×24+1×23+1×21+1×20+1×2-3=27.125D=(0010 0111.0001 0010 0101)BCD2.5将下列二进制数分别转换为八进制数和十六进制数。
微机原理课后习题参考答案第一章2、完成下列数制之间的转换。
01011100B=92D135D=10000111B 10110010B=262Q=B2H 3、组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型数。
答:组合型BCD码用高四位和低四位分别对应十进制数的个位和十位,其表示范围是0~99;非组合型BCD码用一个字节的低四位表示十进制数,高四位则任意取值,表示范围为0~9。
组合型:254=BCD 非组合型:254=BCD 7、计算机为什么采用补码形式存储数据?当计算机的字长n=16,补码的数据表示范围是多少?答:在补码运算过程中,符号位参加运算,简化了加减法规则,且能使减法运算转化为加法运算,可以简化机器的运算器电路。
+32767~ -32768。
9、设计算机字长n=8,求下列各式的[X+Y]补和[X-Y]补,并验证计算结果是否正确。
X=18,Y=89 [X+Y]补=00010010+01011001=01101011B=107D 正确[X-Y]补=10111001B=00010010+10100111=补正确X=-23,Y=-11 [X+Y]补=11101001+11110101=11011110B=补正确[X-Y]补=11101001+00001011=11110100B=补正确X=18,Y=-15 [X+Y]补=00010010+11110001=00000011B=补正确[X-Y]补=00010010+00001111=00100001B=补正确X=-18,Y=120 [X+Y]补=11101110+01111000=01100110B=补正确[X-Y]补=11101110+10001000=01110110B=补于X-Y=-138 超出了机器数范围,因此出错了。
13、微型计算机的主要性能指标有哪些?答:CPU字长、存储器容量、运算速度、CPU内核和IO工作电压、制造工艺、扩展能力、软件配置。
习题2参考答案2.1 8086 CPU共有哪些16位寄存器?其中哪些16位寄存器可分为二个8位寄存器来使用?参考答案:8086 CPU共有AX、BX、CX、DX、SI、DI、SP、BP、IP、FLAGS、CS、DS、ES、SS共14个16位的寄存器。
其中AX、BX、CX、DX可分为二个8位寄存器来使用2.2 简述8086 CPU各通用寄存器的主要功能?参考答案:8086 CPU包含AX、BX、CX、DX、SI、DI、SP、BP共8个通用寄存器。
其中AX主要用在字的乘、除法,输入/输出指令中;BX主要在寄存器间接寻址和XLAT指令中作基址寄存器使用;CX主要在串操作指令和LOOP指令中作计数器使用;DX主要在字的乘除法指令和输入/输出指令中使用;SI主要在字符串操作指令中作源变址寄存器使用;DI主要在字符串操作指令中作目的变址寄存器使用;SP主要在堆栈操作中作堆栈指针使用;BP主要在寄存器间接寻址中作基址指针使用。
2.3 8086 CPU的标志寄存器有几个状态标志位?几个控制标志位?它们各自的含义和作用是什么?在Debug环境下,对应的用什么符号来表示之?参考答案:8086 CPU的标志寄存器有6个状态标志位,有3个控制标志位。
其中CF进位标志位主要用来反映运算结果是否产生进位或借位,如果运算结果的最高位向前产生了一个进位(加法)或借位(减法),则其值为1,否则其值为0;PF奇偶标志位用于反映运算结果中低8位含有“1”的个数的奇偶性,如果“1”的个数为偶数,则PF 的值为1,否则为0;AF辅助进位标志位表示加法或减法运算结果中D3位向D4位产生进位或借位的情况,有进位(借位)时AF=1;无进位(借位)时AF=0;ZF零标志位用来反映运算结果是否为0,如果运算结果为0,则其值为1,否则其值为0;SF用来反映运算结果的符号位,当运算结果为负数时,SF的值为1,否则其值为0;OF溢出标志位用于反映带符号数运算所得结果是否溢出,如果运算结果超过当前运算位数所能表示的范围,则称为溢出,OF的值被置为1,否则,OF的值被清为0。
微机原理第⼆版+⽥辉+课后答案答:2 =1048576=1MB 习题1-1.微型计算机包括哪⼏个主要组成部分,各部分的基本功能是什么?答:微型计算机由CPU、存储器、输⼊/输出接⼝及系统总线组成。
CPU是微型计算机的核⼼部件,⼀般具有下列功能:进⾏算术和逻辑运算。
暂存少量数据。
对指令译码并执⾏指令所规定的操作。
与存储器和外设进⾏数据交换的能⼒。
提供整个系统所需要的定时和控制信号。
响应其他部件发出的中断请求;总线是计算机系统各功能模块间传递信息的公共通道,⼀般由总线控制器、总线发送器、总线接收器以及⼀组导线组成;存储器是⽤来存储数据、程序的部件;I/O接⼝是微型计算机的重要组成部件,在CPU 和外设之间起适配作⽤。
1-2.CPU 执⾏指令的⼯作过程。
答:取指令、执⾏指令。
指令执⾏的基本过程:(1)开始执⾏程序时,程序计数器中保存第⼀条指令的地址,指明当前将要执⾏的指令存放在存储器的哪个单元。
(2)控制器:将程序计数器中的地址送⾄地址寄存器MAR,并发出读命令。
存储器根据此地址取出⼀条指令,经过数据总线进⼊指令寄存器IR。
(3)指令译码器译码,控制逻辑阵列发操作命令,执⾏指令操作码规定的操作。
(4)修改程序计数器的内容。
1-3.果微处理器的地址总线为20 位,它的最⼤寻址空间为多少?201-4.处理器、微型计算机和微型计算机系统之间有什么关系?答:微处理器是微型计算机的核⼼部件。
微处理器配上存储器、输⼊/输出接⼝及相应的外设构成完整的微型计算机。
以微型计算机为主体,配上系统软件和外部设备以后,就构成了完整的微型计算机系统。
1-5.下⾯⼗进制数分别转换为⼆进制、⼋进制和⼗六进制数:128,65535,1024答:128,⼆进制:10000000B,⼋进制:200O,⼗六进制:80H65535,⼆进制:1111111111111111B,⼋进制:177777O,⼗六进制:FFFFH1024,⼆进制:10000000000B,⼋进制:2000O,⼗六进制:400H1-6.下⾯⼆进制数分别转换为⼗进制及⼗六进制数:1011.1010B,1111101.11 B答:1011.1010B,⼗进制:11.625,⼗六进制:B.AH1111101.11B,⼗进制:125.75,⼗六进制:7D.CH1-7.(5487)10=(0101010010000111)BCD=1010101101111 B若 CPU 的主时钟频率为 10MHz ,则⼀个时钟周期为10 s ,⼀个基本总线周期为 4× 1-8.设字长为 8 位,请写出下列数的原码、反码、补码和移码:15,-20,-27/32 答:[+15]原 =00001111, [+15]反 =00001111, [+15]补 =00001111, [+15]移 =10001111[-20]原 =10010100, [-20]反 =11101011, [-20]补 =11101100, [-20]移 =01101100[-27/32]原 =1.1101100, [-27/32]反 =1.0010011, [-27/32]补 =1.0010100,第 2 章微型计算机系统的微处理器习题2-1.086/8088 CPU 的功能结构由哪两部分组成?它们的主要功能是什么?答:8086/8088 CPU 的功能结构由以下两部分组成:总线接⼝单元BIU (Bus Interface Unit ),执⾏部件EU (Execution Unit )。
习题一、选择题1.8086/8088CPU内部有一个始终指示下条指令偏移地址的部件是_______。
A. SPB.CSC.IPD.BP答案:C2. 指令队列的作用是_________。
A.暂存操作数地址B.暂存操作数C.暂存指令地址D.暂存预取指令答案:D3. 8086/8088下列部件中与地址形成无关的是______。
A. ALUB. 通用寄存器C. 指针寄存器D. 段寄存器答案:A4.对于8086,下列说法错误的是_______。
A.段寄存器位于BIU中B.20位的物理地址是在EU部件中形成的C.复位后CS的初值为FFFFHD.指令队列的长度为6个字节答案:B5.8086/8088中ES、DI分别属于_______。
A. EU、BIUB. EU、EUC. BIU、BIUD. BIU、EU答案:D6.BIU与EU工作方式的正确说法是_______。
A. 并行但不同步工作B.同步工作C. 各自独立工作D. 指令队列满时异步工作,空时同步工作答案:A7.在执行转移、调用和返回指令时,指令队列中原有的内容_______。
A.自动清除B.用软件清除C.不改变D.自动清除或用软件清除答案:A8.下列说法中,正确的一条是______A. 8086/8088标志寄存器共有16位,每一位都有含义。
B. 8088/8086的数据总线都是16位。
C. 8086/8088的逻辑段不允许段的重叠和交叉D. 8086/8088的逻辑段空间最大为64KB,实际应用中可能小于64KB。
答案:D9.8086/8088工作于最大模式,是因为_____。
A.可以扩展存储容量B.可以扩大I/O空间C.可以构成多处理器系统D.可以提高CPU主频答案:C10.8088/8086最大模式比最小模式在结构上至少应增加_____。
A.中断优先级控制器B.总线控制器C.数据驱动器D.地址锁存器答案:B11.组成最大模式下的最小系统,除CPU、时钟电路,ROM,RAM及I/O接口外,至少需增加的芯片类型为______。
1. 8086CPU内部由哪两部分组成?它们的主要功能?8086CPU由指令执行部件EU和总线接口部件BIU两部分组成。
EU完成指令译码和指令执行的工作,BIU是CPU与外部(存储器和I/O口)的接口,它提供了16位双向数据总线和20位地址总线,完成所有的外部总线操作。
具有地址形成、取指令、指令排队、读/写操作数、总线控制等功能。
2.8080CPU中有哪些寄存器?各有什么用途?答:8086CPU的寄存器有通用寄存器组、指针和变址寄存器、段寄存器、指令指针寄存器及标志位寄存器PSW。
4个16位通用寄存器,它们分别是AX,BX,CX,DX,用以存放16位数据或地址。
也可分为8个8位寄存器来使用,低8位是AL、BL、CL、DL,高8位是AH、BH、CH、DH,只能存放8位数据,不能存放地址。
指针和变址寄存器存放的内容是某一段内地址偏移量,用来形成操作数地址,主要在堆栈操作和变址运算中使用。
段寄存器给出相应逻辑段的首地址,称为“段基址”。
段基址与段内偏移地址结合形成20位物理地址。
指令指针寄存器用来存放将要执行的下一条指令在现行代码中的偏移地址。
16位标志寄存器PSW用来存放运算结果的特征,常用作后续条件转移指令的转移控制条件。
3.8086CPU与8088CPU的主要区别是什么?答:(1)8086的指令队列是6字节,8088是4字节;(2)8088与外部交换数据的总线宽度是8位,所以,对16位数的存储器读/写需要2个总线周期,8086是16位;AD~(3)8088外部数据总线只有8条,所以分时复用的地址/数据总线为7AD;(4)8088中,用IO/M信号代替M/IO;(5)8088中,不需要BHE信号。
4. 简要解释下列名词的意义。
CPU:中央处理单元CPU (Control Processing Unit)也称微处理器,是微型计算机的核心部件,由运算器ALU、控制器、寄存器组以及总线接口等部件组成。
主要完成各种运算,负责对整机的控制。
一.选择题1.用一条指令仅实现将BX+SI=>AX的方法是()(1)XCHG AX,[BX][SI] (2)MOV AX,[BX+SI](3)LEA AX,BX[SI] (4)LEA AX,[BX][SI]2.将DX:AX构成的双字(有符号数)除以2的指令为( )(1)SAR AX.,1 (2)SHR AX,1RCR DX,1 RCR DX,1(3) SAR DX,1 (4) SHRDX,1RCR AX, 1 RCR AX,13.不能使AX和CF同时清零的指令是()(1) SUB AX,AX(2)CMP AX,AX(3)XOR AX,AX(4)AND AX,0 4.不使用AL寄存器的指令是()(1)XLAT (2)AAA (3)STOBS (4)SAHF5.如(SP)=1FFEH,求执行程序段后的(SP)=()PUSH AXPUSH DXPOP CXPOP BXCALL BX(1)(SP)=1FFAH(2)(SP)=1FFCH(3)(SP)=2002H(4)(SP)=2000H6.对寄存器AX的内容乘以4的正确指令序列是()。
A、SHR AX,1 SHR AX,1B、SHL AX,1 SHL,AX,1C、ROL AX,1 ROL AX,1D、RCR AX,1 RCR AX,17.进行除法运算时,可使用字节或字的扩展指令(CBW和CWD),这两条指令对标志寄存器()。
(1) AF,CF有影响(2)CF,ZF有影响(3)对标志寄存器各位均有影响(4)对标志寄存各位均无影响8.下面有语法错误的指令是( )a. ADD AL,AHb. ADD [BX+3],ALc. ADD AH,[DI]d. ADD [BP+2],DA1(DA1是变量名)9.完成对DX的有符号数除以2的指令是( )a. IDIV 2b. SAR DX,1c. SHR DX,1d. RCR DX,110.使进位位置1的指令是( )a. CLCb. CMCc. STCd. NOP11.设AL=-15,要使AL=15应执行的指令是( )a. NEG ALb. NOT ALc. INC ALd. DEC AL12.在条件转移指令中,结果为负数则转移的指令是( )a. JNSb. JXc. JSd. JP13..下面的XCHG指令中,语法正确的是( )a. XCHG AL,DSb. XCHG BL,[BX]c. XCHG AL,0FHd. XCHG BUF1,BUF214.一条指令中目的操作数不允许使用的寻址方式是( )a. 寄存器寻址b. 立即数寻址c. 变址寻址d. 寄存器间接寻址15.设SP=1FFEH,执行下列指令后,SP寄存器的值是( )POPFPUSH AXa. 2000Hb. 2002Hc. 1FFCHd. 1FFEH16.LDS SI,ES:[2000H]指令的全部功能是( )a. 把地址2000H送SIb. 把地址2000H字单元的内容送SIc. 把地址2000H字单元内容送SI,把2002H字单元内容送DSd. 把地址2000H字单元内容送DS,把2002H字单元内容送SI17.设AL=04H,BL=0F8H,执行MUL BL指令后,结果是( )a. AX=0032Hb. AX=00E0Hc. AX=03E0Hd. AX=0FFE0H18.设ES=3000H,DI=00FFH,CX=0005H,AL=41H,DF=0,从300FFH开始的连续5个字节单元内容分别是44H,43H,42H,41H,41H. 执行REPNZ SCASB指令后,正确的结果是( )a. DI=0104H,CX=0000Hb. DI=0103H,CX=0001Hc. DI=0102H,CX=0002Hd. DI=0101H,CX=0003H19. BUF DW 10H DUP(3 DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是()。
习题31.假定(DS)=2000H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010H,数据变量V AL的偏移地址为0050H,请指出下列指令原操作数是什么寻址方式,其物理地址是多少?(1)MOV AX, 0ABH (2) MOV AX, [100H](3) MOV AX, V AL (4) MOV BX, [SI](5) MOV AL, V AL[BX] (6) MOV CL, [BX][SI](7) MOV V AL[SI], BX (8) MOV [BP][SI], 100答:(1) 立即数寻址,无物理地址(2) 直接寻址,物理地址=2000H×10H+100H=20100H(3) 直接寻址,物理地址=2000H×10H+0050H=20050H(4) 寄存器间接寻址,物理地址=2000H×10H+00A0=200A0H(5) 相对寄存器寻址,物理地址=2000H×10H+(0050+0100H)=20150H(6) 基址加变寻址,物理地址=2000H×10H+(0100H+00A0H)=201A0H(7) 寄存器寻址,无物理地址(8) 立即数寻址,无物理地址2.已知(SS)=0FFA0H,(SP)=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。
答:“8057H”进栈,则SP自动从00B0H指向00B2H,“0F79H”进栈,则SP 自动从00B2H指向00B4H;执行一条POP指令,“0F79H”被弹出栈,SP从00B4H 指向00B2H。
图略。
3.设有关寄存器及存储单元的内容如下:(DS)=2000H, (BX)=0100H, (AX)=1200H, (SI)=0002H, (20100H)=12H, (20101H)=34H, (20102H)=56H, (20103H)=78H, (21200H)=2AH, (21201H)=4CH, (21202H)=0B7H, (21203H)=65H.试说明下列各条指令单独执行后相关寄存器或存储单元的内容。
“微机原理与接口技术”1.微机系统的硬件由哪几部分组成?答:三部分:微型计算机(微处理器,存储器,I/0接口,系统总线),外围设备,电源。
2.什么是微机的总线,分为哪三组?答:是传递信息的一组公用导线。
分三组:地址总线,数据总线,控制总线。
3.8086/8088CPU的内部结构分为哪两大模块,各自的主要功能是什么?答:总线接口部件(BIU)功能:根据执行单元EU的请求完成CPU与存储器或IO设备之间的数据传送。
执行部件(EU),作用:从指令对列中取出指令,对指令进行译码,发出相应的传送数据或算术的控制信号接受由总线接口部件传送来的数据或把数据传送到总线接口部件进行算术运算。
4.8086指令队列的作用是什么?答:作用是:在执行指令的同时从内存中取了一条指令或下几条指令,取来的指令放在指令队列中这样它就不需要象以往的计算机那样让CPU轮番进行取指和执行的工作,从而提高CPU的利用率。
5.8086的存储器空间最大可以为多少?怎样用16位寄存器实现对20位地址的寻址?完成逻辑地址到物理地址转换的部件是什么?答:8086的存储器空间最大可以为2^20(1MB);8086计算机引入了分段管理机制,当CPU寻址某个存储单元时,先将段寄存器内的内容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址。
6.段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令的物理地址为多少?指向这一物理地址的CS值和IP 值是唯一的吗?答:指令的物理地址为21F00H;CS值和IP值不是唯一的,例如:CS=2100H,IP=0F00H。
7.设存储器的段地址是4ABFH,物理地址为50000H,其偏移地址为多少?答:偏移地址为54100H。
(物理地址=段地址*16+偏移地址)8.8086/8088CPU有哪几个状态标志位,有哪几个控制标志位?其意义各是什么?答:状态标志位有6个:ZF,SF,CF,OF,AF,PF。
其意思是用来反映指令执行的特征,通常是由CPU根据指令执行结果自动设置的;控制标志位有3个:DF,IF,TF。
它是由程序通过执行特定的指令来设置的,以控制指令的操作方式。
9.8086CPU的AD0~AD15是什么引脚?答:数据与地址引脚10.I NTR、INTA、NMI、ALE、HOLD、HLDA引脚的名称各是什么?答:INTR是可屏蔽请求信号,INTA中断响应信号,NMI是不可屏蔽中断请求信号,ALE是地址锁存允许信号,HOLD 总线请求信号,HLDA总线请求响应信号。
11.虚拟存储器有哪两部分组成?答:有主存储器和辅助存储器。
12.在80x86中,什么是逻辑地址、线性地址、物理地址?答:线性地址是连续的不分段的地址;逻辑地址是由程序提供的地址;物理地址是内存单元的实际地址。
13.段描述符分为哪几种?答:分为三大类,程序段描述符,系统段描述符,门描述符。
14.R AM有几种,各有什么特点?ROM有几种,各有什么特点?答:RAM有两种,SRAM(静态RAM),它采用触发器电路构成一个二进制位信息的存储单元,这种触发器一般由6个晶体管组成,它读出采用单边读出的原理,写入采用双边写入原理;DRAM(动态RAM),它集成度高,内部存储单元按矩阵形式排列成存储体,通常采用行,列地址复合选择寻址法。
ROM有5种,固定掩摸编程ROM,可编程PROM,紫外光檫除可编程EPROM,电可檫除的可编程EPROM,闪速存储器。
15.若用4K*1位的RAM芯片组成8K*8为的存储器,需要多少芯片?A19—A0地址线中哪些参与片内寻址,哪些用做芯片组的片选信号?答:需要16片芯片;其中A11-A0参与片内寻址;A12做芯片组的片选信号。
16.若系统分别使用512K*8、1K*4、16K*8、64K*1的RAM,各需要多少条地址线进行寻址,各需要多少条数据线?答:512K*8需要19条地址线,8条数据线。
1K*4需要10条地址线,4条数据线。
16K*8需要14条地址线,8条数据线。
64K*1需要14条地址线,1条数据线。
17.某微机系统的RAM容量为8K*8,若首地址为4800H,则最后一个单元的地址是多少?答:最后一个单元的地址是:4800H+2^13-118.什么是总线,微机中的总线通常分为哪几类?答:是一组信号线的集合,是一种在各模块间传送信息的公共通路;有四类,①片内总线,②微处理器总线,③系统总线,④外总线。
19.微处理器为什么需要用接口和外设相连接?答:因为许多接口设备中,在工作原理,驱动方式,信息格式以及工作速度方面彼此相差很大,因此为了进行速度和工作方式的匹配,并协助完成二者之间数据传送控制任务。
20.一般的I/O接口电路有哪四种寄存器,它们各自的作用是什么?答:数据输入寄存器,数据输出寄存器,状态寄存器和控制寄存器。
数据端口能对传送数据提供缓冲,隔离,寄存的作用;状态寄存器用来保存外设或接口的状态;控制寄存器用来寄存CPU通过数据总线发来的命令。
21.8086最多可有多少级中断?按照产生中断的方法分为哪两大类?答:有8级;按照产生中断的方法可分为硬件中断和软件中断。
22.什么是中断?什么是中断向量?中断向量表的地址范围?答:中断就是CPU在执行当前程序时由于内外部事件引起CPU暂时停止当前正在执行的程序而转向执行请求CPU暂时停止的内外部事件的服务程序,该程序处理完后又返回继续执行被停止的程序;中断向量是中断处理子程序的入口地址;地址范围是00000H-003FFH。
23.中断向量表的功能是什么?若中断向量号分别为1AH和20H,则它们的中断向量在中断向量表的什么位置上?答:中断向量表的功能是当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入相应的中断服务子程序。
1AH在中断向量表的位置是1AH*4=68H在中断向量表0000:0068处;20H在中断向量表的位置是80H在中断向量表0000:0080处。
24.通常,解决中断优先级的方法有哪几种?答:3种,软件查询确定优先级,硬件优先级排队电路确定优先级,具体中断屏蔽的接口电路。
25.8259A通过级联的方式可以由几片构成最多多少级优先权的中断源。
答:8259A通过级联的方式由9片构成最多64级优先权的中断源。
26.简述中断控制器8259A的内部结构和主要功能。
答:8259A的内部结构有数据总线缓冲器,读写逻辑电路,级联缓冲比较器,中断请求寄存器(IRR),中断屏蔽寄存器(IMR),中断服务寄存器(ISR),优先权判别器(PR),控制逻辑。
27.8259A的内部寄存器中IRR、IMR、ISR三个寄存器的作用是什么?答:见课本153页。
中断请求寄存器iRR终端可屏蔽寄存器IMR 中断服务寄存器ISR28.8259A有哪些中断结束方式,分别适用于哪些场合。
答:8259A有2种中断结束方式:中断自动结束方式,中断非自动结束方式(一般中断和特殊中断);中断自动结束方式只适合有一块8259A,并且各中断不发生嵌套的情况。
中断非自动结束方式只能适合与全嵌套方式下不能用与循环优先级方式。
29.8259A对优先级的管理方式有哪几种,各是什么含义?答:有4种,普通全嵌套方式,特殊全嵌套方式,自动循环方式,优先级特殊循环方式(详细见课本P159和P160)30.8259A的初始化命令字和操作命令字有哪些,其功能是什么;哪些应写入奇地址,哪些应写入偶地址。
答:8259A的初始化命令字ICW1,ICW2,ICW3,ICW4;操作命令字OCW1,OCW2,OCW3。
(见课本P155到P158);ICW2,ICW3,ICW4,OCW1写如奇地址,ICW1,OCW2,OCW3为偶地址。
31.简述8259A的初始化过程。
答:8259A的初始化编程,需要CPU向它输出一个2—4字节的初始化命令字,输出初始化命令字的流程如图所示,其中ICW1和ICW2是必须的,而ICW3和ICW4需根据具体的情况来加以选择。
各初始化命令字的安排与作用分叙如下:32.8253有几个计数通道,每条计数通道有哪些信号线,其作用是什么?答:8253有三个计数通道,每个计数通道有3条信号线:CLK:计数输入用于输入定时基准脉冲或计数脉冲.OUT:输出信号以相应的电平指示计数的完成或输出脉冲的波型.GATA:选通输入用于启动或禁止计数器的操作,以使计数器和计数输入信号同步。
33.8253有几种工作方式,其特点是什么?答:六种方式(见课本P224)34.8253的内部寄存器及各位的意义是什么?答:8253的内部寄存器有四个,8位的控制寄存器:初始化时,将控制字写入该寄存器;16位的计数器初值寄存器,初始化是写入该计数器的初始值,其最大初始值为0000H;16位的减一计数器,计数器的初值由计数初值寄存器送入减法计数器,当计数输入端输入一个计数脉冲时,减法计数器内容减一;16位的输出锁存器用来锁存计数脉冲时,减法计数器内容减一。
35.8255A的功能是什么,有哪几个控制字,各位的意义是什么?答:8255A是一种通用的可编程程序并行I/O接口芯片.它有两个控制字,一个是方式选择控制字,它的作用是实现对8255A的各个端口的选择。
一个是对C口进行置位或复位控制字. 它的作用是能实现对端口C的每一位进行控制。
36.8255A的A口、B口、C口有哪几种工作方式,其特点是什么?C口有哪些使用特点?答:8255A的A口可以工作在3种工作方式的任何一种,B 口只能工作在方式0或方式1,C口则常常配合端口A和端口B工作,为这两个端口的输入/输出传输提供控制信号和状态信号。
37.同步通信、异步通信的帧格式各是什么?什么是奇、偶校验?答:异步通信的帧格式是用一个起始位表示传送字符的开始,用1-2个停止位表示字符结束。
起始位与停止位之间是数据位,数据位后是校验位,数据的最底位紧跟起始位,其他各位顺序传送;同步通信的帧格式是在每组字符之前必须加上一个或多个同步字符做为一个信息帧的起始位。
38.什么是波特率?若在串行通信中的波特率是1200b/s,8位数据位,1个停止位,无校验位,传输1KB的文件需要多长时间?答:波特率是单位时间内通信系统所传送的信息量。
需要多长时间=1024/(1200/10)=8.53s39.对8255A进行初始化,要求端口A工作于方式1,输入;端口B工作于方式0,输出;端口C的高4位配合端口A工作,低4位为输入。
设控制口的地址为006CH。
答:由题知应为10111001H(B9H)MOV AL,B9HMOV DX,006CHOUT DX,AL40.设8255A的四个端口地址分别为00C0H、00C2H、00C4H 和00C6H,要求用置0、置1的方法对PC6置1,对PC4置0。