chapter3-4微处理器及其系统PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
③ 双操作数指令:通常1个操作数在寄存器中,另一个操作数 可以在寄存器中,也可以在存储器中,或者是指令中给出 的立即数,但不允许两个操作数均在存储器中。
4
3.4.2 寻址方式
寻址方式就是CPU根据指令功能所规定的操作码如何自动 寻找相应的操作数的方式。
8086/8088的操作数可位于寄存器、存储器或I/O端口中。 对操作数可采用固定寻址、立即数寻址、寄存器寻址、存
9
寄存器寻址举例:
【例3.4】 MOV AL, BH ;将寄存器BH中的字节内容送寄存器AL
【例3.5】 MOV SP, BP ;将堆栈基址指针寄存器BP中的字内容送堆栈指针寄 存器SP
10
4. 存储器寻址
指令系统中采用的复杂的“寻址方式”主要是针对存储器 操作数而言。
CPU寻找存储器操作数,必须经总线控制逻辑电路进行存 取。当执行单元EU需要读/写位于存储器的操作数时,应 根据指令给出的寻址方式,由EU先计算出操作数地址的偏 移量(即有效地址EA),并将它送给总线接口单元BIU, 同时请求BIU执行一个总线周期,BIU将某个段寄存器的内 容左移4位,加上由EU送来的偏移量形成一个20位的实际 地址(即物理地址),然后执行总线周期,读/写指令所需 的操作数。
储器寻址等多种不同方式进行寻址。
5
1. 固定寻址
有些单字节指令其操作是规定CPU对某个固定的寄存器进 行的。
如加法的ASCII码调整指令: AAA
该指令规定被调整的数总是位于AL中,其功能是用来调整 AL中的结果,此结果是把两个ASCII字符当作操作数相加 后形成的。
6
2. 立即数寻址
操作数就在指令中,当执行指令时,CPU直接从指令队列 中取得该立即数,而不必执行总线周期。
11
4. 存储器寻址
8086/8088 CPU所寻址的操作数地址的偏移量(有效地址 EA)是一个不带符号的16位地址码,表示操作数所在段的 首地址与操作数地址之间的字节距离。所以,它实际上是 一个相对地址。
EA的值由汇编程序根据指令所采用的寻址方式自动计算得 出。计算EA的通式:
0
EA
基址值
14
(2) 间接寻址方式
间接寻址方式是指寄存器间接寻址方式,其操作数一定在 存储器中,而存储单元的有效地址EA则由寄存器指出。
寄存器间接寻址中的寄存器是基址寄存器BX、基址指针 寄存器BP、源变址寄存器SI和目的变址寄存器DI之一或它 们的某种组合。书写指令时,这些寄存器带有方括号[ ]。
根据所采用寄存器的不同,间接寻址方式可分为3种:基 址寻址方式、变址寻址方式、基址加变址寻址方式。
第三章
微处理器及其系统
3.4 8086/8088 的指令系统
8086 与 8088 的 指 令 系 统 完 全 相 同 , 它 们 是 由 8 位 的 8080/8085指令系统扩展而来的,同时它们又能在 其后续的80x86系列的CPU上正确运行。 8086/8088的指令系统是80x86系列CPU共同的基础。
2
3.4.1 指令系统的特点及指令基本格式
8086/8088指令系统的主要特点: ① 采用可变长指令,指令格式由1 ~ 6字节组成,比较复杂。 ② 寻址方式多样灵活,处理数据的能力比较强,可处理字节
或字、带符号或无符号的二进制数据以及压缩型/非压缩 型的十进制数据。 ③ 有重复指令和乘、除运算指令。扩充了条件转移、移位/ 循环指令。 ④ 有软件中断功能和支持多处理器系统工作的指令。
立即数可以是8位,也可以是16位;并规定只能是整数类型 的源操作数。
立即数寻址主要用来给寄存器赋初值,指令执行速度快。
7
立即数寻址举例:
【例3.2】 MOV AX, 1680H
;将立即数1680H送寄存器AX,其中AL中为80H,AH中为 16H。
【例3.3】 MOV AX, ‘AB’
;将ASCII码‘AB’在内存中的字内容4241H 送AX,其中AL 中为41H,AH中为42H。
8
3. 寄存器寻址
操作数放在CPU的寄存器中,而寄存器名在指令中指出。 对16位操作数来说,寄存器可以为8个16位的通用寄存器
AX 、BX、CX、DX、SP、BP、SI、DI 。对8位的操作数 来说,寄存器只能为AH、AL、BH、BL、CH、CL、DH、 DL。 在一条指令中,源操作数和目的操作数都可以采用寄存器 寻址方式。 寄存器寻址的指令长度短,操作数就在CPU内部进行,不 需要使用总线周期,所以,执行速度也快。
3
3.4.1 指令系统的特点及指令基本格式
指令的基本组成包括操作码和操作数两部分, 8086/8088指 令编码的基本格式:
① 无操作数指令:一般属于控制类指令,指令中只包含1个字 节的操作码。
② 单操作数指令:只有1个操作数(字节或字),也只给出1 个操作数地址。该操作数可以在寄存器或存储器中,也可 以是指令中直接给出的立即数。
13
(存储器)直接寻址方式举例:
【例3.7】 MOV AX, ES: [1680H]
;将附加段ES中1680H和1681H两个内存单元的字内容取入 AX(段超越)
【例3.8】 MOV AX, NUMBER
;将符号NUMBER所对应的数取入AX
MOV AX, [NUMBER]
;将符号地址NUMBER及(NUMBER+1)两单元的字内容 取入AX
BX
BP
Baidu Nhomakorabea
变址值
SI DI
位移量DISP
8位
16位
12
(1) 直接寻址方式
直接寻址方式的含义:指令中以位移量方式直接给出操作 数的有效地址EA,即EA=DISP。
这种寻址方式的指令执行速度快,主要用于存取位于存储 器中的简单变量。
【例3.6】 MOV AX, [1680H]
;将数据段中1680H和1681H两个内存单元的字内容取入AX (默认段寄存器为数据段DS )
15
①基址寻址方式
基址寻址是指操作数的有效地址EA由基址寄存器(BX或 BP)的内容和指令中给出的地址位移量(0位、8位或16位) 之和来确定。
【例3.9】 MOV AX, [BX]
;把(数据段中)以BX为有效地址的存储器单元的字内容 送AX
16
②变址寻址方式
变址寻址是指操作数的有效地址EA由变址寄存器(SI或 DI)的内容以及指令中给出的地址位移量(0位、8位或16 位)之和来确定。
4
3.4.2 寻址方式
寻址方式就是CPU根据指令功能所规定的操作码如何自动 寻找相应的操作数的方式。
8086/8088的操作数可位于寄存器、存储器或I/O端口中。 对操作数可采用固定寻址、立即数寻址、寄存器寻址、存
9
寄存器寻址举例:
【例3.4】 MOV AL, BH ;将寄存器BH中的字节内容送寄存器AL
【例3.5】 MOV SP, BP ;将堆栈基址指针寄存器BP中的字内容送堆栈指针寄 存器SP
10
4. 存储器寻址
指令系统中采用的复杂的“寻址方式”主要是针对存储器 操作数而言。
CPU寻找存储器操作数,必须经总线控制逻辑电路进行存 取。当执行单元EU需要读/写位于存储器的操作数时,应 根据指令给出的寻址方式,由EU先计算出操作数地址的偏 移量(即有效地址EA),并将它送给总线接口单元BIU, 同时请求BIU执行一个总线周期,BIU将某个段寄存器的内 容左移4位,加上由EU送来的偏移量形成一个20位的实际 地址(即物理地址),然后执行总线周期,读/写指令所需 的操作数。
储器寻址等多种不同方式进行寻址。
5
1. 固定寻址
有些单字节指令其操作是规定CPU对某个固定的寄存器进 行的。
如加法的ASCII码调整指令: AAA
该指令规定被调整的数总是位于AL中,其功能是用来调整 AL中的结果,此结果是把两个ASCII字符当作操作数相加 后形成的。
6
2. 立即数寻址
操作数就在指令中,当执行指令时,CPU直接从指令队列 中取得该立即数,而不必执行总线周期。
11
4. 存储器寻址
8086/8088 CPU所寻址的操作数地址的偏移量(有效地址 EA)是一个不带符号的16位地址码,表示操作数所在段的 首地址与操作数地址之间的字节距离。所以,它实际上是 一个相对地址。
EA的值由汇编程序根据指令所采用的寻址方式自动计算得 出。计算EA的通式:
0
EA
基址值
14
(2) 间接寻址方式
间接寻址方式是指寄存器间接寻址方式,其操作数一定在 存储器中,而存储单元的有效地址EA则由寄存器指出。
寄存器间接寻址中的寄存器是基址寄存器BX、基址指针 寄存器BP、源变址寄存器SI和目的变址寄存器DI之一或它 们的某种组合。书写指令时,这些寄存器带有方括号[ ]。
根据所采用寄存器的不同,间接寻址方式可分为3种:基 址寻址方式、变址寻址方式、基址加变址寻址方式。
第三章
微处理器及其系统
3.4 8086/8088 的指令系统
8086 与 8088 的 指 令 系 统 完 全 相 同 , 它 们 是 由 8 位 的 8080/8085指令系统扩展而来的,同时它们又能在 其后续的80x86系列的CPU上正确运行。 8086/8088的指令系统是80x86系列CPU共同的基础。
2
3.4.1 指令系统的特点及指令基本格式
8086/8088指令系统的主要特点: ① 采用可变长指令,指令格式由1 ~ 6字节组成,比较复杂。 ② 寻址方式多样灵活,处理数据的能力比较强,可处理字节
或字、带符号或无符号的二进制数据以及压缩型/非压缩 型的十进制数据。 ③ 有重复指令和乘、除运算指令。扩充了条件转移、移位/ 循环指令。 ④ 有软件中断功能和支持多处理器系统工作的指令。
立即数可以是8位,也可以是16位;并规定只能是整数类型 的源操作数。
立即数寻址主要用来给寄存器赋初值,指令执行速度快。
7
立即数寻址举例:
【例3.2】 MOV AX, 1680H
;将立即数1680H送寄存器AX,其中AL中为80H,AH中为 16H。
【例3.3】 MOV AX, ‘AB’
;将ASCII码‘AB’在内存中的字内容4241H 送AX,其中AL 中为41H,AH中为42H。
8
3. 寄存器寻址
操作数放在CPU的寄存器中,而寄存器名在指令中指出。 对16位操作数来说,寄存器可以为8个16位的通用寄存器
AX 、BX、CX、DX、SP、BP、SI、DI 。对8位的操作数 来说,寄存器只能为AH、AL、BH、BL、CH、CL、DH、 DL。 在一条指令中,源操作数和目的操作数都可以采用寄存器 寻址方式。 寄存器寻址的指令长度短,操作数就在CPU内部进行,不 需要使用总线周期,所以,执行速度也快。
3
3.4.1 指令系统的特点及指令基本格式
指令的基本组成包括操作码和操作数两部分, 8086/8088指 令编码的基本格式:
① 无操作数指令:一般属于控制类指令,指令中只包含1个字 节的操作码。
② 单操作数指令:只有1个操作数(字节或字),也只给出1 个操作数地址。该操作数可以在寄存器或存储器中,也可 以是指令中直接给出的立即数。
13
(存储器)直接寻址方式举例:
【例3.7】 MOV AX, ES: [1680H]
;将附加段ES中1680H和1681H两个内存单元的字内容取入 AX(段超越)
【例3.8】 MOV AX, NUMBER
;将符号NUMBER所对应的数取入AX
MOV AX, [NUMBER]
;将符号地址NUMBER及(NUMBER+1)两单元的字内容 取入AX
BX
BP
Baidu Nhomakorabea
变址值
SI DI
位移量DISP
8位
16位
12
(1) 直接寻址方式
直接寻址方式的含义:指令中以位移量方式直接给出操作 数的有效地址EA,即EA=DISP。
这种寻址方式的指令执行速度快,主要用于存取位于存储 器中的简单变量。
【例3.6】 MOV AX, [1680H]
;将数据段中1680H和1681H两个内存单元的字内容取入AX (默认段寄存器为数据段DS )
15
①基址寻址方式
基址寻址是指操作数的有效地址EA由基址寄存器(BX或 BP)的内容和指令中给出的地址位移量(0位、8位或16位) 之和来确定。
【例3.9】 MOV AX, [BX]
;把(数据段中)以BX为有效地址的存储器单元的字内容 送AX
16
②变址寻址方式
变址寻址是指操作数的有效地址EA由变址寄存器(SI或 DI)的内容以及指令中给出的地址位移量(0位、8位或16 位)之和来确定。