微机原理 第四章 微型计算机指令系统

合集下载

微型计算机原理-第4章(4)微机原理与接口技术(第三版)(王忠民)

微型计算机原理-第4章(4)微机原理与接口技术(第三版)(王忠民)

第四章 80x86 指令系统—累加器专用指令
⑴ 输入指令 ①直接寻址的输入指令 指令格式及操作:
IN acc, port ;(acc) ←(port)
②间接寻址的输入指令
指令格式及操作:
IN acc, DX
;(acc) ←((DX))
第四章 80x86 指令系统—累加器专用指令
⑵ 输出指令
①直接寻址的输出指令 指令格式及操作:
第四章 80x86 指令系统—通用数据传送指令
说明: *堆栈按后进先出原则组织。 *堆栈操作以字为单位进行。 *目的操作数dst不可以是CS。 *指令中的操作数不能是立即数。
第四章 80x86 指令系统—通用数据传送指令
例:已知(AX)=1234H,(BX)=5678H,分析下面程序段的执 行过程。
REG <=> REG/MEM • 段寄存器的内容不能参加交换
例: XCHG BX,[BP+SI]
第四章 80x86 指令系统—累加器专用指令
(二) 累加器专用指令 这类指令中的一个操作数必须是累加器。累加器操作数可以 是8位的,也可以是16位的。
第四章 80x86 指令系统—累加器专用指令 1.输入/输出指令
DI 1234H DS 4000H
DM
34H 2130H 12H 00H 2132H 40H
第四章 80x86 指令系统—地址传送指令
3. 地址指针装入ES指令 指令格式:
LES reg16, mem32 此指令的功能是将源操作数所对应的双字长的内存单元中的高 字内容(一般为16位段基址)送入ES,低字内容(一般为偏移地址) 送入指令所指定的寄存器中。例如:
LES DI, [2130H]
DI 1234H ES 4000H

微型计算机原理课后答案

微型计算机原理课后答案

微机原理第一章1.计算机按其使用的逻辑元件的不同被分为哪几代?微型计算机是哪一代计算机的分支?答:电子管计算机、晶体管计算机、集成电路计算机和大规模、超大规模集成电路计算机。

微型计算机属于第四代计算机的分支。

2. 简述冯·诺依曼计算机体系结构的基本思想。

答:冯·诺伊曼基本设计思想为:①以二进制形式表示指令和数据。

②程序和数据事先存放在存储器中,计算机在工作时能够高速地从存储器中取出指令并加以执行。

③由运算器、控制器、存储器、输入和输出设备等五大部件组成计算机系统。

3.微型计算机系统由哪几部分组成:答: 微机系统分硬件和软件,硬件包括CPU、存储器、输入输出设备和输入输出借口,软件包括软件系统和应用软件。

6.何谓总线?有哪几类?作用如何?答:总线是计算机中各功能部件间传送信息的公共通道。

根据所传送的信息的内容与作用不同,总线可分为三类:地址总线、数据总线、控制总线。

这三类总线作用为计算机各功能部件间传送地址、数据、控制信息的。

8.存储器读写操作的不同点?答:①读操作:由CPU发出的读命令控制。

写操作:由CPU发出的写命令控制。

②读操作:把数据从内存中读出来,放到DB上。

写操作:把DB上的内容,写入到存储器中。

第二章计算机中的数值和编码1、将十进制数转换为二进制和十六进制(1) 129.75=1000 0001.11B=81.CH(2) 218.8125=1101 1010.1101B=DA.DH(3) 15.625=1111.101B=F.AH(4) 47.15625=10 1111.0010 1B=2F.28 H2、将下列二进制数转换为十进制和十六进制(1) 111010 B=58 =3A H(2) 1011 1100.111B= 188.875= BC.E H(3) 0.1101 1B=0.84375 =0.D8H(4) 11110.01 B=30.25 =1E.4H3、完成下列二进制数的加减法运算(1) 1001.11+100.01=1110.00(2) 1101010110.1001-01100001.0011=01110101.0110(3) 00111101+10111011=11111000 (4) 01011101.0110-101101.1011=101111.10114、完成下列十六进制数的加减法运算(1) 745CH+56DFH=D14B H (2) ABF.8H-EF6.AH=9C28.E H(3) 12AB.F7+3CD.05=1678 .FC H(4) 6F01H-EFD8H=7F29 H5、计算下列表达式的值(1) 128.8125+10110101.1011B+1F.2H=101010101.1010B(2) 287.68-10101010.11H+8E.EH=103.CEH(3) 18.9+1010.1101B+12.6H-1011.1001=36.5256、选取字长n为8位和16位两种情况,求下列十进制数的补码。

第4章(1)微机原理与接口技术(第三版)(王忠民)

第4章(1)微机原理与接口技术(第三版)(王忠民)

第四章 80x86 指令系统—立即数寻址方式
MOV AX, 1234H
程序存储器
AH AL
12H 34H 操作码字节 指
34H 令
12H

第四章 80x86 指令系统—寄存器寻址方式
2)寄存器寻址方式 操作数存放在CPU的内部寄存器reg中:
8位寄存器r8: AH、AL、BH、BL、CH、CL、DH、DL 16位寄存器r16: AX、BX、CX、DX、SI、DI、BP、SP 4个段寄存器seg: CS、DS、SS、ES
微机原理与接口技术
西安邮电大学计算机学院 宁晓菊
第四章 80x86 指令系统(第一讲)
第一章 微型计算机系统导论(第一讲)
本章主要内容
1 80x86指令的寻址方式(3讲) 2 80x86指令系统(5讲)
第四章 80x86 指令系统(第一讲)
第一章 微型计算机系统导论(第一讲)
本讲主要内容
1 寻址方式概述 2 数据寻址方式之一:
80 21H
操作码

21H

AL

80
第四章 80x86 指令系统—I/O端口寻址方式
⑵ 间接端口寻址方式 MOV DX, 1234H OUT DX, AL
I/O接口 0001H
DX
12
34
0002H
……
AL
80 1234H
80
Thank you!
感谢
谢谢,精品课件 资料搜集
第四章 80x86 指令系统—立即数寻址方式
1)立即数寻址方式 指令中的操作数直接存放在机器代码中,紧跟在操
作码之后(操作数作为指令的一部分存放在操作码 之后的主存单元中)

微机原理第四章习题及答案

微机原理第四章习题及答案

第四章8086/8088指令系统一、选择题1、在数据传送指令中要注意:立即数只能作为( A )。

A.源操作数B.源操作数或目的操作数C.目的操作数D.源操作数和目的操作数2、对堆栈进行存取操作时需遵守的原则是( B )。

A.先进先出B.先进后出C.任意顺序D.以上都不对3、MOV AX,[BP+SI]指令源操作数隐含的段地址为( D )。

A.CS B.DS C.ES D.SS4、堆栈指针SP的作用是用来指示( C )。

A.栈底地址B.下一条要执行指令的地址C.栈顶地址D.上一条要执行指令的地址5、在指令MOV AX,0执行后,CPU状态标志位ZF的取值( D )。

A.为0 B.为1 C.不确定D.没影响6、下列寄存器组中,全部用于寄存器间接寻址方式中的为( C )。

A.AX,BX,CX,IP B.BX,BP,DS,SIC.BP,BX,SI,DI D.IP,SP,AX,BX7、若8086 CPU工作于最小方式,则执行指令OUT DX,AL时其引脚信号M /IO和DT/R的电平应是( B )。

A.低,低B.低,高C.高,低D.高,高8、执行指令MOV AX,DATA后,AX中值为变量DATA的( D )。

A.段值B.偏移量值C.数据类型值D.地址DATA单元中的值9、下列指令中,不正确的指令是。

( D )A.MOV AX,BX B.MOV AX,[BX]C.MOV AL,BL D.MOV AL,[BL]10、8086CPU在执行MOV AL,[BX]指令的总线周期内,若BX存放的内容为1010H,则BHE和A0的状态是( C )。

A.0,0 B.0,1C.1,0 D.1,111、若DF=1,执行串操作指令MOVSW时,地址指针变化方式是( D )。

A.SI=SI + 1,DI = DI + 1B.SI = SI + 2,DI = DI + 2C.SI = SI-1,DI = DI-1D.SI = SI-2,DI = DI-212、条件转移指令JNE的条件是( C )。

微机原理第04章(指令系统)3

微机原理第04章(指令系统)3

ASSUME CS:CODESG, DS:DATA SG START: …
CALL subp…Biblioteka RETMAINENDP
段内间接调用:
第4章:例4.17 求较大值
cmp ax,bx ;比较AX和BX jae next ;若AX≥BX,转移 xchg ax,bx ;若AX<BX,交换 next: mov wmax,ax
如果AX和BX存放的是有符号数, 则条件转移指令应采用JGE指令
第4章:例4.17 求较大值(另解)
cmp ax,bx ;比较AX和BX jae next mov wmax, bx ;若AX<BX,wmax←BX jmp done next: mov wmax,ax ;若AX≥BX,wmax←AX done: ……
相对寻址方式
用标号表达
指令代码中提供目的地址相对于当前IP的位移 量,转移到的目的地址(转移后的IP值)就是 当前IP值加上位移量
直接寻址方式
用标号表达
指令代码中提供目的逻辑地址,转移后的CS和 IP值直接来自指令操作码后的目的地址操作数
间接寻址方式
用寄存器或存储器操作数表达
指令代码中指示寄存器或存储单元,目的地址 从寄存器或存储单元中间接获得
inc di loop again
;循环条件判定:循环次数减1,不为0转移(循环)
第4章:例4.18 数据块传送(字)
mov cx,200h
;设置循环次数:1K÷2=200H
mov si,offset sbuf
;设置循环初值:SI指向数据段源缓冲区开始
mov di,offset dbuf again:
第4章:4.2.7.2 条件转移指令
条件转移指令Jcc根据指定的条件确定程序 是否发生转移。其通用格式为:

微型计算机指令系统

微型计算机指令系统

例:已知:(DS)=2100H,(DI)=2000H
指令: MOV AX,[DI] ;(AX)
物理地址=(DS) * 16 + (DI)
((DI))
=2100H * 16 + 2000H
=21000H + 2000H
=23000H
指令结果:将23000H单元内容送AL中,
将23001H单元内容送AH中。
3、1 8086/8088的寻址方式
本章主要介绍8086/8088的指令系统以及在指令中为 取得操作数地址所使用的寻址方式。
汇编指令:
操作码 操作数
操作码:指令操作类型; 操作数:指令所需操作数或操作数的地址;操作数可以 有一个,也可以有两个,一个源操作数,一个目的操作 数。 例: MOV AX,CX ;将CX的内容送入AX中。
5、相对基址变址寻址方式
操作数在存储器内,指令将基址寄存器(BX或BP)与 变址寄存器(SI或DI)的内容之和再加上位移量(8位 或16位),得到操作数所在单元的有效地址。
有效地址=
(BX)
(BP)
+
(SI)
DISP8
+
(DI)
DISP16
物理地址 = (DS)* 16 +(BX)产生的有效地址
物理地址 = (SS)* 16 +(BP)产生的有效地址
AA
AA 间接寻址 BB AX
0001
AH
AL
操作数在存储器中,指令中寄存器内容作为操作数所在 单元的有效地址。
(BX) 有效地址 =
(SI)
(DI)
段寄存器为DS 段寄存器为SS
(BP) 物理地址计算方法:
物理地址 = (DS)* 16 + (BX)或(SI)或(DI) 物理地址 = (SS)* 16 + (BP)

微机原理及接口技术-第4章-指令系统

微机原理及接口技术-第4章-指令系统

IN
AL, DX
第4章
指令系统
计算机原理与汇编语言程序设计
实验指导书 李志民编著
中南大学信息科学与工程学院自动化所
第4章
指令系统
指令的机器码(machine code)表示方法
一、机器语言指令的编码目的和特点 1、机器语言指令 汇编语言 流程序
用符号指令编写的程序
经过汇编 程序
相当于解释
机器语言 程序
D15~D10位: 6为操作码(规定说明指令的功能)
D9位(D位):规定数据的传送方向(direction)
D=1-数据传送到寄存器(或存储器)
D=0-数据从寄存器(或M单元)传出
第4章
D8位(W位):规定数据类型
W=1-数据为一个字
指令系统
W=0-数据是一个字节
第4章 指令系统 4.2.3 I/O端口寻址方式 I/O interface
addressing
8086CPU采用独立编址的I/O端口,可以最多访问64K个字节端口 或32K个字端口,用专门的IN指令和OUT指令访问。I/O端口寻址只用 于这两种指令中。寻址方式有如下两种。 1. 直接端口寻址 在指令中直接给出端口地址,端口地址一般采用2位十六进制数, 也可以用符号表示,这种寻址方式为直接端口寻址。因此,直接端口 寻址可访问的端口数为0~255个。 例如:IN AL,25H 2. 寄存器间接端口寻址 如果访问的端口地址值大于255,则必须用I/O端口的间接寻址方式。 所谓间接寻址,是指把I/O端口的地址先送到DX中,用DX作间接寻址 寄存器,而且只能用DX寄存器。 例如:MOV DX,378H
第4章
指令系统
第4章 8086 instruction system

80x86微机原理参考答案

80x86微机原理参考答案

80x86微机原理参考答案第一章计算机基础(P32)1-1电子管,晶体管,中小规模集成电路、大规模、超大规模集成电路。

1-2把CPU和一组称为寄存器(Registers)的特殊存储器集成在一片大规模集成电路或超大规模集成电路封装之中,这个器件才被称为微处理器。

以微处理器为核心,配上由大规模集成电路制作的只读存储器(ROM)、读写存储器(RAM)、输入/输出、接口电路及系统总线等所组成的计算机,称为微型计算机。

微型计算机系统是微型计算机配置相应的系统软件,应用软件及外部设备等.1-3写出下列机器数的真值:(1)01101110 (2)10001101(3)01011001 (4)11001110答案:(1)+110 (2)-13(原码) -114(反码)-115(补码)(3)+89 (4)-78(原码)-49(反码)-50(补码)1-4写出下列二进制数的原码、反码和补码(设字长为8位):(1)+010111 (2)+101011(3)-101000 (4)-111111答案:(1)[x]原=00010111 [x]反= 00010111 [x]补= 00010111(2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011(3)[x]原=10101000 [x]反= 11010111 [x]补= 11011000(4)[x]原=10111111 [x]反= 11000000 [x]补=110000011-5 当下列各二进制数分别代表原码,反码,和补码时,其等效的十进制数值为多少?(1)00001110 表示原码14,反码14,表示补码为14(2)11111111 表示原码-127,反码-0,表示补码为-1(3)10000000 表示原码-0,反码-127,表示补码为-128(4)10000001 表示原码-1,反码-126,表示补码为-1271-6 已知x1=+0010100,y1=+0100001,x2=-0010100,y2=-0100001,试计算下列各式。

微机原理与接口技术 指令系统整理

微机原理与接口技术 指令系统整理

微机原理与接口技术指令系统整理一、引言微机原理与接口技术是计算机科学与技术专业中的重要课程之一,它主要介绍了微机的基本原理和接口技术。

其中,指令系统是微机的核心组成部份,它定义了微机的指令集和指令的执行方式。

本文将对微机原理与接口技术中的指令系统进行整理和总结,旨在匡助读者更好地理解和掌握微机的指令系统。

二、指令系统概述1. 定义指令系统是计算机硬件与软件之间的接口,它定义了计算机的指令集和指令的执行方式。

指令系统包括指令的格式、指令的编码方式、指令的功能等内容。

2. 指令集指令集是指计算机所能执行的所有指令的集合。

常见的指令集有精简指令集(RISC)和复杂指令集(CISC)等。

3. 指令的格式指令的格式包括操作码、操作数和寻址方式等部份。

操作码用于指示所执行的操作,操作数用于指定操作的对象,寻址方式用于确定操作数的地址。

4. 指令的编码方式指令的编码方式决定了指令在计算机内部的表示方式。

常见的编码方式有二进制编码、十进制编码和十六进制编码等。

5. 指令的功能指令的功能包括数据传送、算术运算、逻辑运算、控制转移等。

不同的指令可以实现不同的功能。

三、指令系统分类1. 指令的类型指令可以根据其功能和操作对象的不同进行分类。

常见的指令类型有数据传送指令、算术运算指令、逻辑运算指令、控制转移指令等。

2. 指令的寻址方式指令的寻址方式决定了指令如何获取操作数的地址。

常见的寻址方式有即将寻址、直接寻址、间接寻址、寄存器寻址等。

3. 指令的执行顺序指令的执行顺序决定了指令的执行顺序和流程。

常见的执行顺序有顺序执行、条件执行、循环执行等。

四、指令系统设计原则1. 简洁性原则指令系统应尽量简洁,避免冗余和复杂的指令,以提高执行效率和降低设计成本。

2. 完备性原则指令系统应包含常用的指令,能够满足大部份应用需求。

3. 兼容性原则指令系统应与硬件和软件环境兼容,以便于系统的扩展和升级。

4. 可扩展性原则指令系统应具有良好的扩展性,能够支持新的指令和功能的添加。

微机 指令系统

微机 指令系统

该寻址方式的操作数在汇编语言指令中书写时可以是下述 形式之一: MOV MOV MOV MOV AL,[BP+TABLE] AL,[BP]+ TABLE AL,TABLE[BP] AL,[BP][TABLE]
其实以上几条指令代表的是同一功能的指令。其中TABLE
为8位或16位位移量。
(6) 基址变址寻址方式(Based Indexed Addressing)
指令执行结果:(AL)=45H

在直接寻址方式中,指令中直接给出操作数的有效地址, 或者说,有效地址EA就在指令中。它(操作数的有效地址, 而不是操作数本身)存放在代码段中指令的操作码之后, 但操作数一般存放在数据段中。
这种寻址方式默认的段寄存器是DS。IBM-PC机允许在汇编指 令中指定除DS寄存器以外的段寄存器作为操作数的段地址, 这就是段超越前缀. 此时应在指令中给出“跨越段前缀”。
基址变址相对寻址方式的操作数有效地址是一个基址寄存器 内容、一个变址寄存器内容与指令中指定的一个8位或16位位移 量之和,所以有效地址由三个分量组成。即
( SI ) ( BX ) EA disp8 / 16 ( DI ) ( BP)
同样,当基址寄存器为BX时,操作数在数据段中; 基址寄存器为BP时,操作数在堆栈段中。基址变址相对 寻址方式同样也允许段超越。
微型计算机的硬件系统
外设
内存 C P U 总 线 形 成 接口
内存 系 统 接口
接口 总 线 接口
外设
外设
外设
第三章
指令系统
微机有一套反映其全部功能的指令,它构成了该计算机的 指令系统。通常指令以二进制编码的形式存放在存储器中,用 二进制编码形式表示的指令称为机器指令。CPU可以直接识别机 器指令。对于使用者来说, 机器指令记忆、阅读比较困难,为 此将每一条指令都用统一规定的符号和格式来表示。用符号表 示的指令称为符号指令。符号指令具有直观、易理解、 可帮助 记忆的特点。 汇编语言程序中的指令就是符号指令。在计算机 中,符号指令与机器指令具有一一对应的关系。

微机原理第4章练习题及答案

微机原理第4章练习题及答案

微机原理第4章练习题及答案第4章80某86指令系统一、自测练习题㈠选择题1.MOVA某,[B某+SI]的源操作数的物理地址是()。

A.(DS)某16+(B某)+(SI)B.(ES)某16+(B某)+(SI)C.(SS)某10H+(B某)+(SI)D.(CS)某10H+(B某)+(SI)2.MOVA某,[BP+Sl]的源操作数的物理地址是()。

A.(DS)某10H+(BP)+(SI)A.(ES)某16+(BP)+(SI)C.(SS)某16+(BP)+(SI)D.(CS)某10H+(BP)+(SI)3.MOVA某,ES:[B某+SI]的源操作数的物理地址是()。

A.(DS)某16+(B某)+SI)B.(ES)某10H+(B某)+(SI)C.(SS)某10H+(B某)+SI)D.(CS)某16+(B某)+(SI)4.JMPWORDPTR[DI]是()。

A.段内间接转移B.段间间接转移C.段内直接转移D.段间直接转移5.JMPFARPTRBlOCK(BLOCK是符号地址)是()。

A.段内间接转移B.段间间接转移C..段内直接转移D.段间直接转移6.INC指令不影响()标志。

A.OFB.CFC.SFD.ZF7.条件转移指令JNE的测试条件是()。

A.ZF=1B.CF=0C.ZF=0D.CF=18.下列指令中,有语法错误的是()。

A.MOV[SI],[DI]B.INAL,D某C.JMPWORDPTR[B某+8]D.PUSHWORDPTR20[B某+S1]9.假定(SS)=2000H,(SP)=0100H,(A某)=2107H,执行指令PUSHA某后,存放数据21H的物理地址是()。

A.20222HB.20221HC.200FEHD.200FFH10.对于下列程序段:AGAIN:MOVAL,[SI]MOVES:[DI],ALINCSIINCDILOOPAGAIN也可用指令()完成同样的功能。

A.REPMOVSBB.REPLODSBC.REPSTOSBD.REPESCASB11.对于下列程序段:AGAIN:MOVES:[DI],ALINCDILOOPAGAIN可用指令()完成。

微型计算机原理-第4章(5)微机原理与接口技术(第三版)(王忠民)

微型计算机原理-第4章(5)微机原理与接口技术(第三版)(王忠民)
格式:SBB DST,SRC 操作:DST <= DST-SRC-CF
▪DEC(Decrement) 减1
格式:DEC DST 操作: DST <= DST -1
第四章 80x86 指令系统—算术运算指令
▪NEG(Negate)求补
格式:NEG DST 操作: DST <= 0-DST
利用NEG指令可以得到负数的绝对值
60H

ACH

74H

3BH

DATA2 C1H
36H

9EH

D5H
20H

图4.19 例4.3中被加数和加数在内存中的存放情况
第四章 80x86 指令系统—算术运算指令
程序如下: LOOPER:MOV
MOV CX,5
;设置循环次数
MOV SI,0
;置位移量初值
CLC
AL,DATA2[SI]
;取一个
第四章 80x86 指令系统—算术运算指令
说明: 1、DST:REG/MEM,SRC:8/16data/REG/MEM。 2、DST、SRC不能同时为MEM。 3、加法指令影响标志寄存器的状态标志。 4、INC指令不影响CF标志。
第四章 80x86 指令系统—算术运算指令 例 4.3 计 算 两 个 多 字 节 十 六 进 制 数 之 和 : 3B74AC60F8H+20D59E36C1H=?
第四章 80x86 指令系统—算术运算指令
(3)乘法指令
▪MUL(Unsigned Multiple) 无符号数乘法
格式:MUL SRC 操作:AX<=AL*SRC(字节)/ DX,AX<=AX*SRC(字)

微机原理知识点总结

微机原理知识点总结

微机原理知识点总结第一章1. 辨析三个概念:微处理器、微型计算机、微型计算机系统微处理器:简称μP 或MP(Microprocessor) 是指由一片或几片大规模集成电路组成的具有运算器和控制器功能的中央处理器部件,又称为微处理机。

微型计算机: 简称μC 或MC ,是指以微处理器为核心,配上存储器、输入/输出接口电路及系统总线所组成的计算机(又称主机或微电脑)。

微型计算机系统(主机+外设+软件配置)(Microcomputer system) 简称μCS 或MCS,是指以微型计算机为中心, 以相应的外围设备、电源和辅助电路(统称硬件)以及指挥微型计算机工作的系统软件所构成的系统。

2.微机系统结构(三种总线结构):数据总线,地址总线,控制总线第三章3.8086cup 内部结构由两部分组成:总线接口单元BIU(Bus Interface Unit); 执行单元EU(Execution Unit). (1).总线接口单元BIU组成: 4 个16 位的段寄存器(CS、DS、ES、SS);1 个16 位的指令指针寄存器IP;1 个20 位的地址加法器;1 个指令队列(长度为 6 个字节);I/O 控制电路(总线控制逻辑);内部暂存器。

BIU 的功能:根据EU 的请求负责CPU 与内存或I/O 端口传送指令或数据。

①BIU 从内存取指令送到指令队列②当EU 执行指令时,BIU 要配合EU 从指定的内存单元或I/O 端口中读取数据,或者把EU 的操作结果送到指定的内存单元或I/O 端口去。

(2)执行单元EU(Execution Unit )组成:①ALU (算术逻辑单元);②通用寄存器组AX,BX,CX,DX (4 个数据寄存器)BP(基址指针寄存器)SP(堆栈指针寄存器)SI(源变址寄存器)DI( 目的变址寄存器)③数据暂存寄存器④标志寄存器FR⑤EU 控制电路作用:负责执行指令,执行的指令从BIU 的指令队列中取得;运算结果和所需数据,则由EU 向BIU 发出请求,经总线访问内存或I/O 端口进行存取。

4 微机原理第四章 16位微处理器

4 微机原理第四章 16位微处理器

20 位
AX BX CX DX
16 位 段 寄 存 器
指令指针
SP
BP DI SI
CS DS SS ES IP 内部暂存器 外部总线
EU
16 位
数据总线
运 算 寄 存器
总线
BIU
执行 控制 电路
控制 逻辑
8088 8位 8086 16位
A L U
指令对列
1 2 3 4
标志寄存器
8086为 6 字节
(( 5 )在执行转移指令时,指令队列中的原有内容被自动清 (3) 4 在执行指令的时,需要访问 EU又没有总线访问时, M或I/O设备,8088 EU会请求 BIU 1)当指令列已满,而且 )每当 8086 的指令队列中有两个空字节( 有一 2 EU 准备执行一条指令时,它会从指令队列取指 除, BIU 会接着往指令队列中装入另一个程序段中的指令。 便进入空闲状态。 BIU ,完成访问内存或 I/O端口的操作。 个空字节)时, BIU就会自动把指令取到指令队列中。 令,然后用几个时钟周期去执行指令。
16 位
总线接 口单元 (BIU)
总线 控制 逻辑 外部总线
8088 8位 8086 16位
运 算 寄 存器
指令对列
A L U
执行 控制 电路
8086为 6 字节
1
2
3
4
标志寄存器
执行单元 (EU)
4.1 8086的结构 从功能上分为两部分:BIU和EU, 内部结构如图所示。
4.2.1 执行单元EU
片内总线等
1. 第一代——4位或低档8位微处理器 第一代微处理器的典型产品是Intel公司
1971年研制成功的4004(4位CPU)及1972年 推出的低档8位CPU 8008。

微机原理

微机原理
• 有效地址由基址寄存器(BX或BP)的内容加上变 址寄存器(SI或DI)的内容构成: 有效地址=BX/BP+SI/DI • 基址寄存器和变址寄存器默认的段寄存器不同, 一般以基址寄存器决定段寄存器。 • 段地址对应BX基址寄存器默认是DS,对应BP基 址寄存器默认是SS;可用段超越前缀改变。
MOV AX, [BX+SI] MOV AX, [BX][SI] MOV AX, [BP+SI]
MOV AX, BX
;AX←BX
微机原理
§ 4.2.3 存储器寻址方式
存储器段的分配: 在对存储器进行操作时,内存一般可分成4个段,分别称为代码段
、数据段、堆栈段和附加数据段,每个段存放不同性质的数据,进
行不同的操作。 代码段:存放指令。
数据段:存放程序所使用的数据。
堆栈段:程序的堆栈区(子程序调用、系统功能调用、中断处 理等操作使用,是按“先进后出”原则访问的特殊存储区域)或作 为临时数据存储区。 附加数据段:辅助的数据区。 4个逻辑段的段基址分别放在相应的代码段寄存器CS、数据段 寄存器DS、堆栈段寄存器SS和附加段寄存器ES中,由这4个段寄存 器来指明每个段在内存中的起始地址。
, 标号: 指令助记符 操作数 ;注释
(1) 标号是给该指令所在地址取的名字,必须后跟冒号 (“:”),它可以缺省,是可供选择的标识符。规则: – 标识符由字母(a~z,A~Z)、数字(0~9)或某些特殊 字符(@,-,?)组成。 – 第一个字符必须是字母(a~z,A~Z)或某些特殊的符 号(@,-,?),但“?”不能单独作标识符。
MOV AX, [SI+06H] MOV AX, 06H[SI]
微机原理
;AX←DS:[SI+06H] ;AX←DS:[SI+06H]

微机原理第四章

微机原理第四章

基本概念
汇编语言简介
助记符
-采用字符串代替二进制码表示指令,这些字符串被称为 采用字符串代替二进制码表示指令, 助记符
源程序
-采用助记符指令编写的程序
汇编
-将源程序翻译成目标程序的过程
基本概念
汇编语言简介
指令与机器语言指令基本上一一对应 伪指令
-不形成机器语言指令,仅仅在汇编过程中告诉汇编程序 不形成机器语言指令, 应如何汇编
0100:0000H … 000EH 000FH 0010H 0011H 0012H 0013H 0014H
… 33H 42H 41H 43H 00H 44H 00H
DATA1 … DATA6
例1:变量的定义 :
DATA1 DB 20H DATA2 DW 0204H, 1000H (DATA3 DB (-1*3), (15/3) DATA4 DD 12345H 0123’ DATA5 DB ‘0123 0123 AB’, DATA6 DW ‘AB , ‘C’, ‘D’ AB C , D DATA7 DB ? DATA8 DD ? DATA9 DB 5 DUP(00) DATA10 DW 3 DUP(?)
0100:0000H
20H
DATA1
例1:变量的定义 :
DATA1 DB 20H DATA2 DW 0204H, 1000H (DATA3 DB (-1*3), (15/3) DATA4 DD 12345H 0123’ DATA5 DB ‘0123 0123 AB’, DATA6 DW ‘AB , ‘C’, ‘D’ AB C , D DATA7 DB ? DATA8 DD ? DATA9 DB 5 DUP(00) DATA10 DW 3 DUP(?)

微机原理指令

微机原理指令

微机原理指令指令是计算机程序中的基本操作单位,它告诉计算机执行什么操作。

在微机原理中,指令的执行是实现计算机数据处理的关键。

本文将介绍微机原理中的指令,包括指令的组成、指令格式、寻址方式和常用指令的功能。

一、指令的组成在微机原理中,指令由操作码和操作数组成。

操作码用来标识指令的类型和功能,操作数用来表示操作的对象或操作的数据。

二、指令格式微机原理中常用的指令格式有紧凑指令格式(RISC)和指令字格式(CISC)两种。

1. 紧凑指令格式(RISC)紧凑指令格式采用统一长度的指令格式,操作码和操作数都占据特定的位数。

这种格式的指令长度固定,适合于高速执行和高效率的指令流水线处理。

2. 指令字格式(CISC)指令字格式中,操作码和操作数的长度可以不固定,根据指令的功能需求来改变。

这种格式的指令可以包含更多的操作和功能,但执行速度相对较慢。

三、寻址方式指令的寻址方式决定了指令中操作数的获取方式。

常见的寻址方式有直接寻址、间接寻址、寄存器寻址、立即寻址和相对寻址等。

1. 直接寻址直接寻址是指操作数所在的存储单元的地址已经明确指明在指令中,CPU可以直接访问该地址来读取或写入操作数。

2. 间接寻址间接寻址是指操作数所在的存储单元的地址不在指令中,而是存储在另一个地址中,CPU先读取该地址中的内容,然后再根据读取的内容来获取实际操作数的地址。

3. 寄存器寻址寄存器寻址是指操作数存储在CPU的寄存器中,指令中指定了寄存器的编号来访问操作数。

4. 立即寻址立即寻址是指操作数直接包含在指令中,CPU可以直接使用指令中的数据作为操作数。

5. 相对寻址相对寻址是指操作数的地址是相对于当前指令地址的一个偏移量,CPU根据当前指令地址和偏移量可以计算出操作数的真实地址。

四、常用指令及功能在微机原理中,常用的指令包括数据传送指令、算术逻辑指令、控制指令等。

以下列举几种常见的指令及其功能:1. MOV指令:用于将数据从一个存储单元传送到另一个存储单元。

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

例: 已知: DS=2000H; SI=1000H 指令: MOV [SI+disp],AX
青岛理工大学琴岛学院
寄存器间接相对寻址过程示意图
CPU
寄存器间接相对 SI=1000H
MOV [SI+20H] 程序 ,AX
CS 偏移1000H
DS
SS
ES
位移20H
青岛理工大学琴岛学院
寄存器相对寻址过程示意图
真正数据所在的地址
青岛理工大学琴岛学院
错误指令举例: 6)基址变址寻址: MOV [BX+CX],AX ; CX不能做变址寄存器 MOV [BX+BP],AX ; BP不能作为变址寄存器 操作数的有效地址 EA等于一个基址寄存器( BX或 MOV [BX+DI],ARRAY; BP)与一个变址寄存器( SI或DI)的内容之和;
总时间=基本执行时间+计算EA的时间+执行总线读/写周期的时间
指令的基本执行时间随指令类型的不同差异很大,访问存 储器既要执行总线的读/写周期,又要计算操作数的有效地址 EA,计算EA的时间又与指令的寻址方式有关。
青岛理工大学琴岛学院
4.2 8086/8088指令系统
数据传送类指令
算术运算类指令 位操作类指令 串操作类指令 控制转移类指令 处理器控制类指令
21000H 20 位 物 理 地 址 真正数据所在的地址 Memory DS … 20000H

78H 21000H 56H
青岛理工大学琴岛学院

4)寄存器间接寻址:
此方式的操作数存放在存储器单元中,指令给出的 16位寄存器值就是该操作数所在存储单元的EA。

例: 已知: (DS)=2100H,(DI)=2000H 指令: MOV AX,[DI] ;(AX) ((DI)) 注:使用BX、SI、DI,操作数在DS段;BP时在SS段 其中寄存器只能是BX、SI、DI、BP
DS
SS
ES
青岛理工大学琴岛学院
基址变址寻址过程示意图
MOV [BP] +[DI],AX
已知: SS=3000H; BP=2000H; DI=1000H
AH=12H AL=34H Memory SS … 30000H
+)
30000H(SS段首地址=SS内容左移4位) 2000H(BP内容) 1000H(DI内容) 33000H 20 位 物 理 地 址

青岛理工大学琴岛学院
本章结构
1. 8086/8088的指令编码 2. 8086 /8088的寻址方式
3. 8086 /8088指令系统 4. 简单汇编语言程序设计
青岛理工大学琴岛学院
4.1 8086/8088的指令格式及寻址方式
几个需要了解的基本概念:


微处理器能够执行的各种指令的集合就叫它 的指令系统(体现了微处理器的功能); 每条指令对应着一条基本的操作,该条操作 在设计该微处理器的时候就已经被确定了; 指令通常由操作码和操作数两部分组成;
其它等效写法:MOV [BX+DI]disp,CX 注:使用基址寄存器 时,段寄存器为 MOV BX disp[BX+DI] ,CX DS,使用 基址寄存器BP时,段寄存器为 SS。 MOV [BX][DI]disp ,CX MOV disp[BX][DI],CX
青岛理工大学琴岛学院Fra bibliotek基址变址相对寻址过程示意图
青岛理工大学琴岛学院
• MOV指令的两个操作数(源、目的)均可采用不同的寻址方
式,但是必须有一个为寄存器。
注意:
• MOV指令可以传送8位或16位的数据,但是必须与8位或16位
寄存器相对应。
数。
• 不允许把立即数作目的操作数,也不允许向段寄存器送立即
• 不允许在段寄存器之间、存储器单元之间传送数据。 • 不能把寄存器CS、IP用作目的操作数,不能随意改变他们的
MOV [DI+20H],AX
已知:DS=2000H; DI=1000H; disp=20H
AH=12H AL=34H Memory DS … 20000H
+)
20000H(DS段首地址=DS内容左移4位) 1000H(DI内容) 20H(disp内容) 21020H 20 位 物 理 地 址

34H 21020H 12H

34H 33000H 12H
真正数据所在的地址
青岛理工大学琴岛学院
7)相对基址变址寻址: 操作数的有效地址EA是由一个基址寄存器(BX或 BP)、一个变址寄存器(SI或DI)的内容之和,与一 个由指令中指定的位移量相加得到的。 操作数EA=BX或BP值+ SI或DI值+位移量。

例:
MOV [BX+DI+disp],CX
青岛理工大学琴岛学院
根据指令的格式分为三类
双操作数指令 指令中指定两个操作数: 源操作数(src)和目的操作数(dst); 单操作数指令 指令只需一个操作数, 该操作数既是源操作数也是目的操作数; 无操作数指令 指令本身未明确操作数 在哪里,仅隐含指明操作数存放的具体 位置;

青岛理工大学琴岛学院
青岛理工大学琴岛学院
操作数的种类:
根据指令系统中操作对象的不同把操作数分为两大类:

1.数据操作数:指令中操作的对象是数据;
①立即数操作数:指令中要操作的数据在指令中CS;
②寄存器操作数:指令中要操作的数据存放在指定的寄存
器中; ③存储器操作数:指令中要操作的数据存放在指定的存储 单元中; ④I/O操作数:指令中要操作的数据来自或送到I/O端口;

56H 23000H 34H
+) 2000H ( DI内容)
23000H 20 位 物 理 地 址 真正数据所在的地址
青岛理工大学琴岛学院


5)寄存器相对寻址:
操作数存放在存储单元中,有效地址EA等于一个由 指令规定的基址寄存器(BP、BX)或变址寄存器 (SI、DI)的内容与由指令中给定的8位或16位的相 对地址位移量disp(立即数)之和;
4.2.1 数据传送指令
数据传送类指令实现CPU与内部寄存器、存储器、 I/O端口间的数据传送。
1. 通用数据传送指令—(1)通用传送指令MOV 功能:将源操作数内容复制到目操作数中。 可使用的操作数类型组合举例:
MOV MOV MOV MOV MOV MOV AX, [2100H] DX,BP BL ,[2480H] SP,1800H AX,ES DS,[BX+DI] ;累加器 存储器 ;通用寄存器 通用寄存器 ;通用寄存器 存储器 ;通用寄存器 ←立即数 ;通用寄存器 段寄存器 ;段寄存器 存储器
青岛理工大学琴岛学院
4.1.2 8086/8088寻址方式
几个需要了解的基本概念:



指令中关于如何求出操作数的有效地址的方 法即为操作数的寻址方式; 计算机按照指令给出的寻址方式求出操作数 有效地址和存取操作数的过程被称为寻址操 作; 指令中可能直接给出操作数的值,或者给出 操作数存放的地址; 指令中被操作的对象即为操作数;
(DX)
注: 1、寄存器寻址方式的指令操作在CPU内部执行,不 执行总线周期,执行速度最快。 2、寄存器寻址方式既适用于指令的源操作数,也适 用于目的操作数,并且可同时用于源和目的操作数
青岛理工大学琴岛学院
CPU
EU
DX SI 指令队列 MOV SI,DX
BIU
青岛理工大学琴岛学院
3)直接寻址(存储器直接寻址) 操作数存放在存储器单元中,由指令直接给出该单 元的有效地址EA(即16位段内偏移量)也称偏移地 址,代表操作数所在存储单元距离段首地的字节数。
内容。
• 通用传送指令不影响标志位。
青岛理工大学琴岛学院
(2)堆栈操作指令
SS
堆栈顶部由堆栈指针SP指 向。 SP中始终保存着段基 址与栈顶之间的偏移量。
TOP
BOTTOM
X X X X X X
X X X X X X
SP
堆栈
(堆栈初始化时)
SP
青岛理工大学琴岛学院
(2)堆栈操作指令
格式 :PUSH POP src dst ;把src推入堆栈 ;把堆栈内容弹出到dst
第4章 微型计算机指令系统
青岛理工大学琴岛学院
第4章 指令系统
本章重点:寻址方式和各功能指令; 难点:指令编码的格式;学会用功能指 令编写的汇编程序怎样来阅读和理解; 学习方法:以前几章学习到的硬件知识 为基础,理解指令系统中各种功能指令 和寻址方式在机器中是怎样其作用的; 为学习汇编语言程序设计做基础;
直接寻址过程示意图
CPU
直接寻址
MOV AX, [1000H] 程序
CS 偏移1000H
DS
SS
ES
青岛理工大学琴岛学院
直接寻址过程示意图
AH AL
MOV AX,[1000H] 已知:DS=2000H
20000H(DS段首地址=DS内容左移4位) +) 1000H ( 0001 0000 0000 0000B)

2.转移地址操作数:指令中操作的对象不是数据, 而是要转移的目标地址;
青岛理工大学琴岛学院
4.1.2 寻址方式

1.数据的寻址方式:
1 )立即寻址:此方式中指令操作数部分直接给 注: 1 、立即数寻址方式只能用于源操作数,主要用于 出指令的操作数(总是和操作码一起被放入CPU 给寄存器赋值。 的指令列队,在指令执行时不需再访问存储器) 2 、立即数寻址方式不执行总线周期,执行速度快。 3 源操作数以 8位或 16位常数的形式直接出现在指 、立即数为 16位时,低位字节存放在存储器低地 令中。一般用于赋值。 址单元,高位字节存放在存储器高地址单元。
相关文档
最新文档