微机原理第02章(修改)

合集下载

微机原理第2章课后答案

微机原理第2章课后答案

第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)基址寄存器。

微机原理第二章

微机原理第二章

图 2-18


2.4、三态输出电路
由于记忆元件由触发器组成的,而触发器只 有两种状态:0和1,所以每条信号线只能传送一 个触发器的信息( 0或1)。如果一条信号线既能 与一个触发器接通,也可以与其断开而与另一个
触发器接通,则一条信息传输线可以传输随意多
个触发器的信息了。
为了达到以上目的在电路上专门设计了三态 门输出电路。其电路工作原理见图2-19所示,它 是由两个或非门和NMOS晶体管(T1、T2)及 一个非门组成。
下面简要介绍RS触发器、D触发器和 JK触发器,因为这些类型的触发器是计算 机中最常见的基本元件。 1、RS触发器 基本RS触发器 可用两个与非门交 叉联接而成,如图22所示。当S=1而 R=0时,Q=1为置位, 当S=0而R=1时, Q=0称为复位。
2、D 触发器
RS 触发器有两个输入端 S 和 R 。为了存储一个高电
移位寄存器的电路原理图见2-10所示。
图 2-10
可控移位寄存器,是在整机运行中,有控制电路控
制,以保证其在适当时机参与协调工作。这个电路也和 图2-7的L控制门一样,只要在每一位的电路上增加一个L 门即可以达到控制的目的。
SHL——左移(Shift to the Left) SHR——右移(Shift to the Right)
地址总线AB 传送CPU发出的地址,以寻址存储单元或I/O端口。 AB的宽度决定了计算机系统能够使用的最大的存 储器容量。如:地址总线为20条,用A19~A0表示, 可寻址220=1M的存储空间 控制总线CB 向计算机系统的各部件发送操作命令和定时信息。 带有上横线的表示低电平有效,无上横线的表示高 电平有效 如:ALE(address latch enable)、INTR高电平有 效,MEMW、MEMR、IOR、IOW、INTA低电平有效

微机原理课件-第2章微处理器

微机原理课件-第2章微处理器
16
FLAGS标志寄存器
零标志ZF(zero flag)
反映运算结果是否为零。 如结果为0,则ZF置1;否则,ZF清0。
符号标志SF(signal flag)
记录运算结果的符号。 SF为1,运算结果的最高位(即符号位)为1;SF=0,则符号 位为0。
奇偶标志PF(parity flag)
反映运算结果1的个数是偶数还是奇数。 当1的个数为奇数,则PF置1;否则,PF清0。
17
FLAGS标志寄存器
溢出标志OF(overflow flag)
反映有符号数运算结果的溢出情况。 如运算结果溢出,则OF置1;否则,OF为0。 溢出是指运算结果超出了有符号数的表示范围。 通常采用双高位判别法来判断运算结果是否溢出,即 OF为最高位进位与次高位进位的异或。 最高两位同时有进位/借位或同时无进/借位,OF为0; 只有一位有进/借位,OF置1。
18
FLAGS标志寄存器
例【2-1】 指出执行下列加法操作后各标志位的状态。
0111 0010 0101 1000 + 0101 0011 0110 0110
1100 0101 1011 1110
最高位无进位,CF = 0 偶数个1,PF = 1 第3位向第4位无进位,AF = 0 运算结果不为0,ZF = 0 最高位为1,SF = 1 运算结果溢出,OF = 1。
32位微机原理与接口技术
Theory and Interface Technology of 32-bit Microcomputer
主编 副主编
何苏勤 郭青 马静 冯晓东 韩阳 金翠云
西安电子科技大学出版社 2017年9月
1
第2章 微处理器
2
第2章 微处理器

微机原理第2章答案

微机原理第2章答案

第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,地址按减量修改。

微机原理 第二章

微机原理  第二章
(1)算术逻辑运算单元(ALU)
是一个16位的运算器,可用于8位、16位二 进制算术和逻辑运算,也可按指令的寻址方 式计算寻址存储器所需的16位偏移量。
h
11
(2)标志寄存器
是一个16位的寄存器,反映CPU运算的状态特 征和存放某些控制标志。8086使用了9位
➢ CF进位标志:当执行一个加法(或减法)运算使 最高位产生进位(或借位)时,CF为1,否则为0
h
4
系统

总线
线


第二级

Cache
Cache

总线
第一级 取指 指令 Cache
取指/译码部件
装载 调度/执行部件
第一级 数据
Cache 存储 回退部件
指令缓冲池
寄存器组
微处理器内部功能结构图
h
5
2.1.2 微处理器的工作过程
微处理器的工作过程是执行程序的过程,而 执行程序就是顺序执行一条条指令。微处理 器执行指令步骤如下:
h
14
AX在算术运算中用作累加器;BX在计算存储器 地址时常用作基址寄存器;CX在串操作指令及 循环中用作计数器等。
(4)专用寄存器
都是16位 寄存器, 一般用来 存放地址 的偏移量
基数指针寄存器BP 堆栈指针寄存器SP 源变址寄存器SI 目的变址寄存器DI
存取位于当前堆栈段中 的数据所在的偏移地址
数据寄存器既可作为16位,也可作为8位数据 寄存器使用。当用作16位时,称为AX,BX, CX,DX;当用作8位时,AH,BH,CH,DH存放 高位字节,AL,BL,CL,DL存放低位字节。 这样,4个16位寄存器就可当作8个8位寄存器 来使用。
4个16位的数据寄存器除用作通用寄存器外,

微机原理第2章习题与标准答案

微机原理第2章习题与标准答案

习题一、选择题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接口外,至少需增加的芯片类型为______。

微机原理第02章(指令系统)2

微机原理第02章(指令系统)2

加法指令:ADD, ADC和INC 减法指令:SUB, SBB, DEC, NEG和CMP 他们分别执行字或字节的加法和减法运算, 除 INC 和 DEC 不影响 CF 标志外,其他按定 义影响全部状态标志位 操作数组合:
运算指令助记符 reg, imm/reg/mem 运算指令助记符 mem, imm/reg
第2章:5. 求补指令NEG(negtive)
4.取补指令 格式:NEG OPRD (OPRAND ) 功能:OPRD取补 (取反加1) 相当0-操作数,所以算入减法; 且一般CF=1(0-肯定有借位), 只有OPRD=0时CF=0
第2章:例题2.9 求补运算
mov ax,0ff64h neg al ;AL=0-64H=9CH,AX=FF9CH ;OF=0, SF=1,ZF=0,PF=1,CF=1 sub al,9dh ;AL=9CH-9DH=FFH,AX=FFFFH ;OF=0,SF=1,ZF=0,PF=1,CF=1 neg ax ;AX=0-FFFFH=0001H ;OF=0,SF=0,ZF=0,PF=0,CF=1 dec al ;AL=01H-1=0,AX=0000H ;OF=0,SF=0,ZF=1,PF=1,CF=1 neg ax ;AX=0-0=0 ;OF=0,SF=0,ZF=1,PF=1,CF=0
第2章:例题2.10 符号扩展
mov al,64h
;AL=64H (机器数) ,表示10进制数100(真值)
cbw
;将符号0扩展,AX=0064H,仍然表示100
mov ax,0ff00h
;AX=FF00H,表示有符号10进制数-256
cwd
;将符号位“1”扩展,DX.AX=FFFFFF00H ;仍然表示-256

微机原理第02章(寻址方式和传送指令)

微机原理第02章(寻址方式和传送指令)

有效地址由基址寄存器( BX 或 BP )的内容加上 变址寄存器(SI或DI)的内容构成: 有效地址=BX/BP+SI/DI 段地址对应 BX基址寄存器默认是 DS,对应BP基 址寄存器默认是SS;可用段超越前缀改变
MOV AX, [BX+SI] MOV AX, [BX][SI]
;AX←DS:[BX+SI]
段内偏移量为适应各种数据结构的需要,可以有几个部分组 成,所以也把它称为有效地址EA。
寻址方式不同EA的构成不同。归纳EA可有多种情况构成: 直接寻址,寄存器间接寻址,寄存器相对寻址,
基址加变址寻址,相对址加变址寻址。
寻址方式——如何寻找内存操作数。 不同寻址方式实质上是构成它段内的偏移量的方法不同。
34H 12H
堆 栈 段
...
寄存器间接寻址方式 MOV [BP], AX
3 、用 SI、DI、BX 、BP作为间接寻址允许段跨越
指令中可以指定段跨越前缀来取得其他段中的数据。
例:MOV ES:[DI], AX MOV DX, DS:[BP] 这种寻址方法可以用于表格处理。
第2章 (五)寄存器相对寻址方式(Register relative addressing)或变 址寻址 (Index Addressing)
8位位移量 PA=16d ×(SS)+ (BP) + 16位位移量
例: MOV AX, COUNT [BP] 或MOV AX, [COUNT+BP] 或MOV AX, COUNT+[BP]
AH AL 48H 存储器 OP OP 40H 20H 操 作 码 位移量 COUNT
COUNT为16位位移量。 指令执行前: (SS)=5000H, (BP)=3000H, COUNT=2040H, (AX)=1234H

微机原理与接口技术第二章讲解

微机原理与接口技术第二章讲解
? 指令预取队列是并行流水线工作的基础
? 负责与内存或列复位,从
指定的新地址取指令,并立即传给执行单元执行。
25
结论
? 指令预取队列的存在使EU 和BIU 两个部分可同时进 行工作,从而:
? 提高了CPU 的效率; ? 降低了对存储器存取速度的要求
16
READY信号
外部同步控制输入信号,高电平有效。
17
中断请求和响应信号
? INTR:可屏蔽中断请求输入端 ? NMI : 非屏蔽中断请求输入端 ? INTA:中断响应输出端
18
总线保持信号
? HOLD :总线保持请求信号输入端。当 CPU 以外的其他设备要求占用总线时, 通过该引脚向 CPU 发出请求。
? 程序:
? 具有一定功能的指令的有序集合
? 指令:
? 由人向计算机发出的、能够为计算机所识别的命令。
5
3. 指令执行的一般过程
取指令
指令译码
读取操作数
执行指令
存放结果
取指部件,分析部件,执行部件
6
4. 顺序执行和并行流水线
? 顺序执行方式:( 8088/8086 之前的芯片)
? 各功能部件交替工作,按顺序完成指令的执行过 程。
29
数据寄存器
? 8088/8086 含4个16位数据寄存器,它们又 可分为 8个8位寄存器,即:
? AX ? BX ? CX ? DX
AH,AL BH,BL CH ,CL DH ,DL
30
数据寄存器特有的习惯用法
? AX:累加器。所有I/O指令都通过AX与接口传送 信息,中间运算结果也多放于 AX中;
? 另外,BIU 中的地址加法器用来产生20 位的物理 地址。见P44 文字叙述和图2-7 说明。

微机原理第2章

微机原理第2章

控制标志有3个,即 ① 方向标志DF(direction flag) ② 中断允许标志IF(interrupt enable flag) ③ 跟踪标志TF(trap flag)又称为单步标志
3. 8086的总线周期的概念
指令周期、总线周期及时钟周期
微机系统的工作,必须严格按照一定的时间关系(顺 序)来进行,CPU定时所用的周期有三种,即指令周期、总 线周期和时钟周期。
2. 执行部件
功能:从BIU的指令队列中取出指令代码,经指令译码器译码后执行 指令所规定的全部功能。执行指令所得结果或执行指令所需 的数据,都由EU向BIU发出命令,对存储器或I/O接口进行读 / 写操作。由下列4部分组成: ① 4个通用寄存器,即AX、BX、CX、DX; ② 4个专用寄存器,即 基数指针寄存器BP(base pointer) 堆栈指针寄存器SP(stack pointer) 源变址寄存器SI(source index) 目的变址寄存器DI(destination index); ③ 标志寄存器; ④ 算术逻辑部件ALU(arithmetic logic unit)。
AH BH CH DH AL BL CL DL
累加器 基址寄存器 计数寄存器 数据寄存器
堆栈指针寄存器 基址指针寄存器 源变址寄存器 目的变址寄存器 指令指针寄存器 标志寄存器 代码段寄存器 数据段寄存器 堆栈段寄存器 附加段寄存器
数据寄存器
SP BP SI DI
IP
通Байду номын сангаас寄存器
地址指针和 变址寄存器
总线周期 T2 T3 T4
缓冲
数据
① T1状态,发地址信息,以指出要寻址的存储 单元或外设端口的地址。 ② T2状态,撤销地址,使总线低16位浮置成 高阻状态为传输数据做准备,总线的高4位输 出状态信息,用来表示中断允许状态以及当 前正在使用的段寄存器名等。 ③ T3状态,高4位 提供状态信息,低16位数 据 ④ T3之后,可能插入TW ⑤ 在T4状态,结束。

微机原理与接口技术第2章

微机原理与接口技术第2章
CS 代码段寄存器 DS 数据段寄存器 SS 堆栈寄存器 ES 附加段寄存器
指令指针寄存器IP 地址加法器 指令队列缓冲器 总线控制电路
1、总线接口单元 BIU(Bus Interface Unit) 功能:负责与 M、I/O 端口传送数据。
BIU:是CPU与存储器及I/O的接口,内部由20位地址加法器、指令队 列缓冲器、内部寄存器和总线控制逻辑等组成; 完成取指令、指令排队、读/写操作数、地址转换与总线控制等 工作。
EU由ALU、标志寄存器、8个通用寄存器、暂存器、队列控制逻辑与时序控 制逻辑(EU控制器)等组成;EU没有连接到总线上,对系统总线来说 是“外界”的。
1)算术逻辑单元ALU :是一个16位的算术逻辑运算部件,用来对 16位或8位的二进制操作数进行算术和逻辑运算
2)暂存寄存器:是一个16位的寄存器,其主要功能是暂时保存数 据,并向ALU提供参与运算的操作数
MN / MX
8086 CPU
RESET TEST HOLD HLDA NMI INTR INTA M / IO WR RD
ALE BHE AD0~AD19
DT / R DEN
第二章 8086引脚和最大最小系统
READY
控制总线
STB
8282
OE
地址总线A19~ A0
8286
T OE
数据总线D15~D0
3)标志寄存器:一个16位的寄存器,后面部分详细介绍 4) EU控制器:接收从BIU指令队列中取来的指令代码,经分析、
译码后形成各种实时控制信号,向EU内各功能部件发送相应的 控制命令,以完成每条指令所规定的操作。
【例2-1】 将126与-5进行减法运算,看标志位的变化情况。
【例2.1】将数5439H与数456AH相加,并分析相加运算对标志 位的影响

微机原理第2章 习题答案

微机原理第2章 习题答案

第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用来指示当前指令在代码段的偏移位置。

微机原理课后习题答案第二章微处理器和指令系统习题答案

微机原理课后习题答案第二章微处理器和指令系统习题答案

2.9如果GDT寄存器值为0013000000FFH,装人LDTR的选择符为0040H,试问装人描述符高速缓存的LDT描述符的起始地址是多少?解:GDT寄存器的高32位和低16位分别为GDT的基址和段限,所以:GDT的基址=00130000HLDTR选择符的高13位D15~D3=000000001000B是该LDT描述符在GDT中的序号,所以:LDT描述符的起始地址= GDT的基址十LDT描述符相对于GDT基址的偏移值=00130000H+8×8=00130040H2.10假定80486工作在实模式下,(DS)=1000H, (SS)=2000H, ( SI ) = El07FH, ( BX )=0040H, (BP) = 0016H,变量TABLE的偏移地址为0100H。

请间下列指令的源操作数字段是什么寻址方式?它的有效地址(EA)和物理地址(PA)分别是多少?(1)MOV AX,[1234H ] (2) MOV AX, TABLE(3) MOV AX,[BX+100H] (4) MOV AX,TABLE[BPI[SI]解:(1)直接寻址,EA=1234H , PA =(DS)×16+EA=11234H。

(2)直接寻址,EA= O100H,PA= (DS)×16+EA=10100H。

(3)基址寻址,EA=( EBX)+100H =0140H,PA= (DS) × 16+EA=10140H。

(4)带位移的荃址加变址寻址。

(EA)= (BP)+[SI]十TABLE的偏移地址=0195H PA=(SS)×16+EA=20195H}2.11下列指令的源操作数字段是什么寻址方式?(1)MOV EAX , EBX (2)MOV EAX,[ ECX] [EBX ](3) MOV EAX,[ESI][EDX * 2] (4)MOV EAx,[ ESI*8]解:(1)寄存器寻址。

微机原理第2章

微机原理第2章
第2章第12页共103页
第2章 微处理器结构
Pentium微处理器具有比80486更快的运算速度和更高的性 能。微处理器的工作时钟频率可达66~200MHz。在66MHz频 率下,指令平均执行速度为112MIPS,与相同工作频率下的 80486相比,整数运算性能提高一倍,浮点运算性能提高近4倍。 常用的整数运算指令与浮点运算指令采用硬件电路实现,不再 使用微码解释执行,使指令的执行速度进一步加快。
例如,对80386核心硬件进行改进,采用RISC(精简指令系 统计算机)技术来加快指令的执行速度;增强总线接口部件, 加快CPU从主存中存取信息的速度;把浮点运算协处理器部件、 高速缓存及其控制器部件集成到主处理器芯片内加快信息的传 送与处理性能。由于在上述功能上的各种改进,使得80486微 处理器的性能要比带一个80387浮点运算协处理器的80386DX 微处理器速度提高近4倍。
(4) Intel 80486DX4。它也是一个增强型的80486芯片。它 不但以80486DX的4倍工作频率来运行,而且采用了容量更大 的片内高速缓冲存储器(16KB),芯片的工作电压也可降低为 3.3 V。这样使得80486的运行速度更快,Cache的命中率更高, CPU与主存信息的交换速度更快,而芯片功耗则大大降低。
PentiumⅡ另外一个重大改进是抛弃了原来的Socket7接口, 采用了新的Slot1插槽接口、SEC板卡封装,这不但使其获得了更 大的内部总线宽度,也使其他产品无法与其兼容。
PentiumⅡCPU内部的电路板上装有CPU核心芯片、L2 Cache和Cache控制器,其L2 Cache的工作频率为主频的一半, 这使其性能受到一点损失。PentiumⅡ采用0.25μm、2.0 V核心电 压、4.4 ns Cache和100 MHz总线等设计。其主频多是350~450 MHz。

微机原理课件课本 第二章节

微机原理课件课本 第二章节

微型计算机原理及其应用第二章80x86微处理器合肥工业大学计算机与信息学院2012-02第二章80x86微处理器2.1 微处理器的基本结构2.2 Intel8086微处理器2.3 8086中的程序状态字和堆栈2.4 8086系统的组成2.5 8086系统时钟和总线周期2.6 80386微处理器*2.7 80486微处理器*2.8 Pentium处理器*22.1 微处理器的基本结构1. 算术逻辑单元ALU2. 控制器3. 总线与总线缓冲器4. 寄存器阵列32.1.1 算术逻辑单元ALU数学问题的求解可分解为算术和逻辑运算实现。

¾在算术运算中,若符号数采用补码表示,则减法可用加法实现;乘除法可通过多次的加减和移位实现。

¾在逻辑运算中,只要具备“与”、“或”、“非”、“异或”等功能的部件就能实现各种复杂的逻辑运算。

¾所以,在不考虑数据信息表示方式的情况下,计算机只要具备加法、“与”、“或”、“非”等运算和移位操作功能,就能实现各种算术运算和逻辑运算。

算术逻辑单元(Arithmetic Logic Unit,ALU)¾是一个对二进制数进行算术和逻辑运算的部件。

42.1.1 算术逻辑单元ALUALU的主要功能¾硬件实现基本运算加、减、求补、与、或、非、异或、移位、BCD码运算的十进制调整等。

¾乘除法运算中低档的8位微处理器:乘除法运算是通过软件编程实现的,它由加、减、移位功能组合完成。

高档的8位微处理器和16位以上的微处理器:专用的乘除法指令,其乘除法运算功能也由硬件电路来完成。

¾浮点运算在8位或16位微处理器中,所有数都采用定点数表示,浮点数由两个定点数组成,浮点运算采用软件编程实现。

高性能微处理器中集成了专门的浮点处理器,并有专门的浮点运算指令。

562.1.1 算术逻辑单元ALUALU 的构成与工作原理数据寄存器标志寄存器十进制调整ALU 内部总线内部总线☆核心:加法器(与门+或门电路)加法运算减法运算:补码表示Î加法乘除运算:用移位操作实现数据经内部总线进入DRDR 的待运算数据和FR 的进位标志(CF)输入ALU结果送DB 或DR ,同时将运算结果的状态送FR 保存。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4个数据寄存器还可以分成高8位和低8位两 个独立的寄存器,这样又形成8个通用的8 位寄存器
AX: AH AL CX: CH CL BX: BH BL DX: DH DL
第2章:(1)数据寄存器
AX称为累加器(Accumulator)
使用频度最高。用于算术、逻辑运算以及与外设传送信 息等
BX称为基址寄存器(Base address Register)
标志(Flag)用于反映指令执行结果 或控制指令执行形式 8086处理器的各种标志形成了一个16 位的标志寄存器FLAGS(程序状态字 PSW寄存器)
程序设计需要利用标志的状态
第2章:标志寄存器-分类
状态标志--用来记录程序运行结果的状态 信息,许多指令的执行都将相应地设置它
CF ZF SF PF OF AF
当运算结果最低字节中“1”的个数为 零或偶数时,PF=1;否则PF=0
PF标志仅反映最低8位中“1”的个数是 偶或奇,即使是进行16位字操作 3AH+7CH=B6H=10110110B 结果中有5个“1”,是奇数:PF=0
第2章:零标志ZF(Zero Flag)
若运算结果为0,则ZF=1; 否则ZF=0
3AH+7CH=B6H,就是58+124=182, 已经超出-128~+127范围,产生溢出,故OF=1; 补码B6H表达真值是-74,显然运算结果也不正确
01001001B+1=01001010B=4AH=74 • 所以,B6H表达有符号数的真值为-74
第2章:溢出和进位的区别
溢出标志OF和进位标志CF是两个意义 不同的标志 进位标志表示无符号数运算结果是否 超出范围,运算结果仍然正确 溢出标志表示有符号数运算结果是否 超出范围,运算结果已经不正确
2.1.2 8086性能的提高 80386由6个能并行操作的功能部件组成,使执行一条指 令的时间缩短为两个时钟。即总线接口部件、代码预取部 件、指令译码部件、存储器管理部件、指令执行与控制部 件。这些部件按流水线结构设计,指令的预取、译码、执 行等步骤由各自的处理部件并行处理。这样,可同时处理 多条指令,提高微处理器的处理速度。 80486将386的指令译码和执行部件扩展成5级流水线,进 一步增强了其并行处理能力。每个时钟周期执行一条指令。 Pentium 4 处理器在一个时钟周期中可执行多条指令。 2、引入片内缓存
第2章:符号标志SF(Sign Flag)
运算结果最高位为1,则SF=1; 否则SF=0
有符号数据用最高有效位表示数据的符号 所以,最高有效位就是符号标志的状态
3AH+7CH=B6H,最高位D7=1:SF=1
84H+7CH=(1)00H,最高位D7=0:SF=0
第2章:奇偶标志PF(Parity Flag)
STD指令置位方向标志:DF=1
第2章:中断允许标志IF(Interrupt-enable Flag)
控制可屏蔽中断是否可以被处理器响应:
设置IF=1,则允许中断;ห้องสมุดไป่ตู้设置IF=0,则禁止中断
CLI指令复位中断标志:IF=0
STI指令置位中断标志:IF=1
第2章:陷阱标志TF(Trap Flag)
第2章:溢出标志OF(Overflow Flag)
若算术运算的结果有溢出,则OF=1; 否则 OF=0
3AH + 7CH=B6H,产生溢出:OF=1 AAH + 7CH=(1)26H,没有溢出:OF=0
第2章:什么是溢出
处理器内部以补码表示有符号数 8位表达的整数范围是:+127 ~ -128 • B6H=10110110B,最高位为1, 16位表达的范围是:+32767 ~ -32768 作为有符号数是负数 如果运算结果超出这个范围,就产生了溢出 • 对B6H求反加1等于: 有溢出,说明有符号数的运算结果不正确
第2章:溢出的判断
判断运算结果是否溢出有一个简单的规则: 只有当两个相同符号数相加(包括不同符号数相 减),而运算结果的符号与原数据符号相反时, 产生溢出;因为,此时的运算结果显然不正确 其他情况下,则不会产生溢出 例1:3AH+7CH=B6H 例2:AAH+7CH 例3:3AH-7CH 例4:AAH-7CH=2DH 溢出 无溢出 无溢出 溢出
第2章:溢出和进位的应用场合
处理器对两个操作数进行运算时,按照无 符号数求得结果,并相应设置进位标志CF; 同时,根据是否超出有符号数的范围设置 溢出标志OF 应该利用哪个标志,则由程序员来决定。 也就是说,如果将参加运算的操作数认为 是无符号数,就应该关心进位;认为是有 符号数,则要注意是否溢出
第2章:2. 指令指针寄存器
IP(Instruction Pointer)为指令指针寄存 器,指示主存储器指令的位置 随着指令的执行,IP将自动修改以指示下 一条指令所在的存储器位置 IP寄存器是一个专用寄存器 IP寄存器与CS段寄存器联合使用以确定下 一条指令的存储单元地址
第2章:3. 标志寄存器
第2章:2.1.4 8088/8086的存储器结构
存储器是计算机存储信息的地方。掌握数 据存储格式,以及存储器的分段管理对以 后的汇编程序设计非常重要 你能区别寄存器、存储器(主存)、外存(包 括硬盘、光盘、磁带等存储介质)吗?
答案
第2章:寄存器、存储器和外存的区别
寄存器是微处理器(CPU)内部暂存数据的存储 单元,以名称表示,例如:AX,BX..….等 存储器也就是平时所说的主存,也叫内存,可直 接与CPU进行数据交换。主存利用地址区别 外存主要指用来长久保存数据的外部存储介质, 常见的有硬盘、光盘、磁带、U盘等。外存的数据 只能通过主存间接地与CPU交换数据 程序及其数据可以长久存放在外存,在运行需要 时才进入主存
在串操作类指令中,SI、DI还有较特殊的 用法 现在不必完全理解,以后会详细展开
第2章:(3)指针寄存器
指针寄存器用于寻址内存堆栈内的数据
SP为堆栈指针寄存器(Stack Pointer),指示 堆栈段栈顶的位置(偏移地址) BP为基址指针寄存器(Base Pointer),表示 堆栈(Stack)是主存中一个特殊的 数据在堆栈段中的基地址 区域,采用“先进后出”或“后进先出” SP和BP寄存器与SS段寄存器联合使用以确 存取操作方式、而不是随机存取方式。 用8088/8086形成的微机系统中,堆 定堆栈段中的存储单元地址 栈区域被称为堆栈段
第 2章
2.1 80x86系列微处理器是8086的延伸
2.1.1 8086功能的扩展
1、从16位扩展为32位 2、从实模式至保护模式 3、片内存储管理单元(MMU) 4、浮点支持
5、MMX技术
6、流SIMD扩展(SSE)
2.1.2 8086性能的提高
1、利用流水线技术提高操作的并行性
提高性能的两个方面: 一、提高芯片的主频; 二、缩短指令执行的时钟周期数。 8086利用流水线把取指与执行重叠,减少等待取 指时间,使指令执行时间为4个时钟。
第2章:1. 数据的存储格式
计算机中信息的单位
二进制位Bit:存储一位二进制数:0或1 字节Byte:8个二进制位,D7~D0 字Word:16位,2个字节,D15~D0 双字DWord:32位,4个字节,D31~D0
注意:ZF为1表示的结果是0
3AH+7CH=B6H,结果不是零:ZF=0
84H+7CH=(1)00H,结果是零:ZF=1
第2章:方向标志DF(Direction Flag)
用于串操作指令中,控制地址的变化方向:
设置DF=0,存储器地址自动增加; 设置DF=1,存储器地址自动减少
CLD指令复位方向标志:DF=0
第2章:2.1 微处理器的内部结构
从应用角度(不是从内部工作原理)展开
典型8位微处理器的基本结构 8088/8086的功能结构 8088/8086的寄存器结构 8088/8086的存储器结构
为学习指令系统打好基础
例如:关心用户“可编程”寄存器, 不关心无法操纵的“透明”寄存器
第2章: 2.1.2 8086的功能结构
8个通用寄存器 4个段寄存器 1个标志寄存器 1个指令指针寄存器
图示
他们均为16位!
汇编语言程序员看到的处理器,就是寄存器 所以,一定要熟悉这些寄存器的名称和作用
第2章:1. 通用寄存器
8086有8个通用的16位寄存器
(1)数据寄存器: AX BX CX DX (2)变址寄存器: SI DI (3)指针寄存器: BP SP
堆栈(stack)。为支持过程或子程序调用并在过程或 子程序之间传递参数,堆栈和堆栈管理资源包含在基 本执行环境中。堆栈定位在内存中。 I/O端口。 8086结构支持数据在处理器和输入输出 (I/O)端口之间的传送。
第2章:2.3.2 8088/8086的寄存器结构
8088/8086的寄存器组有
控制标志--可由程序根据需要用指令设置, 用于控制处理器执行指令的方式
DF IF TF
标志寄存器FLAGS
15 12 11 10 9 8 7 6 5 4 3 2 1 0
OF DF IF TF SF ZF
AF
PF
CF
第2章:进位标志CF(Carry Flag)
当运算结果的最高有效位有进位(加法)或借 位(减法)时,进位标志置1,即CF=1; 否则CF=0
第2章: 溢出和进位的对比
例1:3AH+7CH=B6H
无符号数运算: 58+124=182 范围内,无进位 有符号数运算: 58+124=182 范围外,有溢出
例2:AAH+7CH=(1)26H
无符号数运算: 170+124=294 范围外,有进位 有符号数运算: -86+124=38 范围内,无溢出
3AH + 7CH=B6H,没有进位:CF = 0 AAH + 7CH=(1)26H,有进位:CF = 1
相关文档
最新文档