指令系统PPT演示文稿
合集下载
第四章-指令系统PPT课件
指令系统中指令采用等长指令的优点:各种指令字长度是相等的,
指令字结构简单,且指令字长度是不变的 ;
采用非等长指令的的优点:各种指令字长度随指令功能而异,结
构灵活,能充分利用指令长度,但指令的控制较复杂 。
.
16
五、指令助记符
由于硬件只能识别1和0,所以采用二进制操作 码是必要的,但是我们用二进制来书写程序却 非常麻烦。
指令前缀 段取代 操作数长度取代 地址长度取代
操作码 Mod Reg或操作码 R/M S I B 位移量 立即数
.
19
七、 Pentium指令格式
指令前缀中的重复前缀指定串的重复操作,这样使 Pentium处理串比软循环快得多。
LOCK前缀用于多CPU环境中对共享存储器的排他性 访问
段取代用于改变默认段寄存器的情况
提供一个常数。
.
31
3、直接寻址
指令中地址码字段给出的地址A就是操作数的 有效地址EA(Effective Address),即EA=A。
.
32
3、直接寻址
操作数地址是不能修改的,与程序本身所在的位置 无关,所以又叫做绝对寻址方式
在早期的计算机中,主存储器的容量较小,指令中 地址码的位数要求不长,采用直接寻址方式简单快 速,也便于硬件实现,因此,常被作为主要的寻址 方式。
本章所讨论的指令,是机器指令。 一台计算机中所有机器指令的集合,称为这台计算机的指令系
统。 指令系统是表征一台计算机性能的重要因素,它的格式与功能
不仅直接影响到机器的硬件结构,而且也直接影响到系统软件, 影响到机器的适用范围
.
3
4.1 指令系统的发展与性能要求
3、发展情况
复杂指令系统计算机,简称CISC。但是如 此庞大的指令系统不但使计算机的研制周期 变长,难以保证正确性,不易调试维护,而 且由于采用了大量使用频率很低的复杂指令 而造成硬件资源浪费。
指令字结构简单,且指令字长度是不变的 ;
采用非等长指令的的优点:各种指令字长度随指令功能而异,结
构灵活,能充分利用指令长度,但指令的控制较复杂 。
.
16
五、指令助记符
由于硬件只能识别1和0,所以采用二进制操作 码是必要的,但是我们用二进制来书写程序却 非常麻烦。
指令前缀 段取代 操作数长度取代 地址长度取代
操作码 Mod Reg或操作码 R/M S I B 位移量 立即数
.
19
七、 Pentium指令格式
指令前缀中的重复前缀指定串的重复操作,这样使 Pentium处理串比软循环快得多。
LOCK前缀用于多CPU环境中对共享存储器的排他性 访问
段取代用于改变默认段寄存器的情况
提供一个常数。
.
31
3、直接寻址
指令中地址码字段给出的地址A就是操作数的 有效地址EA(Effective Address),即EA=A。
.
32
3、直接寻址
操作数地址是不能修改的,与程序本身所在的位置 无关,所以又叫做绝对寻址方式
在早期的计算机中,主存储器的容量较小,指令中 地址码的位数要求不长,采用直接寻址方式简单快 速,也便于硬件实现,因此,常被作为主要的寻址 方式。
本章所讨论的指令,是机器指令。 一台计算机中所有机器指令的集合,称为这台计算机的指令系
统。 指令系统是表征一台计算机性能的重要因素,它的格式与功能
不仅直接影响到机器的硬件结构,而且也直接影响到系统软件, 影响到机器的适用范围
.
3
4.1 指令系统的发展与性能要求
3、发展情况
复杂指令系统计算机,简称CISC。但是如 此庞大的指令系统不但使计算机的研制周期 变长,难以保证正确性,不易调试维护,而 且由于采用了大量使用频率很低的复杂指令 而造成硬件资源浪费。
《指令系统 》课件
指令系统的发展也推动了计算机系统的进步,如随着指令集架构的演进,计算机系统的功能越来越强大 ,性能也越来越高。
在人工智能领域的应用
指令系统在人工智能领域中也有 着广泛的应用。人工智能算法的 实现需要大量的计算和数据处理 ,而指令系统可以提供高效的运 算能力和数据处理能力,为人工 智能算法的运行提供支持。
总之,指令系统作为一种底层技术,在各个领域都有着广泛的应用前景,为各行业的发展提供了重要 的技术支持。
05 指令系统的未来发展
指令系统的发展趋势
指令系统向更高效能发展
01
随着技术的进步,指令系统将不断优化,提高执行效率和性能
。
指令系统向更智能化发展
02
人工智能技术的引入将使指令系统具备更强的自适应和学习能
指令系统还可以用于人工智能领 域的模型优化和算法加速,如通 过优化指令系统实现深度学习模 型的快速推理和训练,提高人工 智能应用的性能和效率。
此外,指令系统还可以用于人工 智能领域的安全性和隐私保护, 如通过加密指令或硬件安全模块 等手段保护用户隐私和数据安全 。
在其他领域的应用
除了计算机系统和人工智能领域,指令系统在其他领域也有着广泛的应用。如通信领域中,指令系统 可以用于信号处理和调制解调等操作;在图形处理领域中,指令系统可以用于图像处理和渲染等操作 ;在科学计算领域中,指令系统可以用于数值计算和模拟等操作。
研究如何将人工智能技术应用于指令系统,使其具备更强的智能化 能力。
未来指令系统的发展前景
01
广泛应用于云计算、大数据等领域
随着云计算、大数据等技术的普及,指令系统将在这些领域发挥重要作
用。
02
成为人工智能技术的关键组成部分
随着人工智能技术的发展,指令系统将成为实现人工智能的重要工具。
在人工智能领域的应用
指令系统在人工智能领域中也有 着广泛的应用。人工智能算法的 实现需要大量的计算和数据处理 ,而指令系统可以提供高效的运 算能力和数据处理能力,为人工 智能算法的运行提供支持。
总之,指令系统作为一种底层技术,在各个领域都有着广泛的应用前景,为各行业的发展提供了重要 的技术支持。
05 指令系统的未来发展
指令系统的发展趋势
指令系统向更高效能发展
01
随着技术的进步,指令系统将不断优化,提高执行效率和性能
。
指令系统向更智能化发展
02
人工智能技术的引入将使指令系统具备更强的自适应和学习能
指令系统还可以用于人工智能领 域的模型优化和算法加速,如通 过优化指令系统实现深度学习模 型的快速推理和训练,提高人工 智能应用的性能和效率。
此外,指令系统还可以用于人工 智能领域的安全性和隐私保护, 如通过加密指令或硬件安全模块 等手段保护用户隐私和数据安全 。
在其他领域的应用
除了计算机系统和人工智能领域,指令系统在其他领域也有着广泛的应用。如通信领域中,指令系统 可以用于信号处理和调制解调等操作;在图形处理领域中,指令系统可以用于图像处理和渲染等操作 ;在科学计算领域中,指令系统可以用于数值计算和模拟等操作。
研究如何将人工智能技术应用于指令系统,使其具备更强的智能化 能力。
未来指令系统的发展前景
01
广泛应用于云计算、大数据等领域
随着云计算、大数据等技术的普及,指令系统将在这些领域发挥重要作
用。
02
成为人工智能技术的关键组成部分
随着人工智能技术的发展,指令系统将成为实现人工智能的重要工具。
《指令系统》PPT课件
例:
已知:(DS)=2100H,(DI)=2000H
指令: MOV AX,[DI] ;AX ((DI))
物理地址=(DS)× 16 + (DI)
是一个内存 单元地址
=2100H × 16 + 2000H
=21000H + 2000H
=23000H
指令结果:将23000H单元内容送AL中,
将23001H单元内容送AH中。
22
2020/11/14
例:
将数据段的变量WVAR(即该变量名指示的内存单元数据)送至 AX寄存器 变量指示内存的一个数据,直接引用变量名就是采用直接寻址方式 变量应该在数据段进行定义,常用的变量定义伪指令 DB和 DW分别表示定义
字节变量和字变量 变量一经定义便具有逻辑地址和类型属性
23
南京理工大学动力学院
2009年
1
2020/11/14
第二章 8086/8088 指令系统
2.1 概述 2.2 寻址方式 2.3 数据传送指令 2.4 算术运算指令 2.5 逻辑运算指令 2.6 串操作指令 2.7 程序控制指令
2
2020/11/14
•指令是微处理器执行某种操作的命令。 •微处理器全部指令的集合称为指令系统(指令集)
将数据段中由BX指定偏移地址处的内存数据送至 AX寄存器 汇编指令: MOV AX, [BX]; 指令功能:AX←DS : [ BX ]; 该指令中有效地址存放于BX寄存器中,而数据则存放在数据段内存单元中,
假设BX内容设置为2000H,则该指令等同于 MOV AX, [2000H]
28
2020/11/14
一方面,会影响处理器执行指令的速度和效率 另一方面,对程序设计也很重要
第5章 指令系统PPT课件
到该地址字段中去,以能表示更多的指令。
上一页
下一页
17.08.2020
17
可变格式的指令操作码编码格式举例
如某机器的指令长度为16位,以4位为1个字段 ,分成4个字段,一个4位的操作码字段,3个4 位的地址码字段,其指令格式为:
用可变格式编码,要表示15条三地址指令,15 条二地址指令,15条一地址指令和16条零地址 指令,共表示61条指令,则可以如下安排:
下一页
7
5.1.2 指令格式
⑵ 地址码:指出操作数的存储地址,CPU通过 这个地址取得操作数。根据地址码的不同,就 有不同的指令格式。 ⑶ 操作结果的存放地址 ⑷ 下一条要执行的指令的地址
17.08.2020
上一页
下一页
8
5.1.2 指令格式
⒉指令格式 根据地址码所给出的地址的个数(操作数的个 数),可以把指令格式分成零地址指令、一地 址指令、二地址指令、三地址指令和多地址指 令(或称几操作数指令)。 ⑴ 零地址指令 格式:
上一页 返回目录
下一页
16
5.1.4 指令操作码的编码格式
⒉可变格式 操作码的长度可变,且分散地放在指令字的
不同字段中。这种格式的优点是可压缩操作码 的平均长度,控制器的设计相对较为复杂,指 令的译码时间也较长。一般在字长较短的微小 型机上广为采用。
可变格式的指令操作码编码格式,通常是在指令字中
用一个固定长度的字段来表示基本操作码,而对于一 部分不需要某个地址码的指令,把它们的操作码扩充
这类指令只有操作码而无操作数,通常也叫无
操作数指令。
上一页
下一页
17.08.2020
9
5.1.2 指令格式
⑵ 一地址指令 格式:
第四章 指令系统74页PPT
操作码长度不固定:操作码分散在指令字的不同字段内
能有效压缩操作码的平均长度,控制复杂,指令译码、分析较难
操作码
因此,现代计算机中多采用不等长操作码——不同 类的指令,其操作码的长度不同
不等长操作码对于缩短操作码的平均长度具有明显 好处
实现不等长操作码可以通过扩展操作码法实现。
扩展操作码
实现不等长操作码可以通过扩展操作码法实现 操作码的长度随地址码的减少而增加 对于一部分不需要操作数的指令可以将指令操作码扩 展到操作数字段 不同地址的指令可以具有不同长度的操作码 在不增加指令长度的情况下,能充分利用指令的各个 字段扩展操作码的长度,使它可以表示更多的指令 通过等长扩展、不等长扩展两种方式实现
扩展操作码
0000 0001 0111
同样的要求还可采用4-5-9不等长扩展 7条使用频度最高的指令操作码
10000
10001 11110
15条使用频度稍低的指令操作码
111110000 111110001
16条使用频度稍低的指令操作码
111111111
不允许短码 是长码的前缀,各条指令的操作码一定不能重复
等长扩展
扩展操作码
每次扩展的操作码的位数相同。例如:4-8-12扩展法、 3-6-9扩展法、4-6-8扩展法
不等长扩展
指每次扩展的操作码的位数不相同。例如:4-6-10扩展 法、3-6-10扩展法
两种扩展方式很难证明哪一种肯定优于另外一种 实际中采用哪种方式,应考虑其他因素,比如,使用频度
扩展操作码
操作码用来表明本条 指令要求计算机完成 的操作
地址码用来给出参加 本次运算的操作数和 运算结果所在的地址
操作码
指令系统的每一条指令都有一个操作码 不同的指令用操作码字段的不同编码来表示 操作码的长度可以是固定,也可以是变化的 操作码长度固定:操作码集中在指令字的一个字段内
能有效压缩操作码的平均长度,控制复杂,指令译码、分析较难
操作码
因此,现代计算机中多采用不等长操作码——不同 类的指令,其操作码的长度不同
不等长操作码对于缩短操作码的平均长度具有明显 好处
实现不等长操作码可以通过扩展操作码法实现。
扩展操作码
实现不等长操作码可以通过扩展操作码法实现 操作码的长度随地址码的减少而增加 对于一部分不需要操作数的指令可以将指令操作码扩 展到操作数字段 不同地址的指令可以具有不同长度的操作码 在不增加指令长度的情况下,能充分利用指令的各个 字段扩展操作码的长度,使它可以表示更多的指令 通过等长扩展、不等长扩展两种方式实现
扩展操作码
0000 0001 0111
同样的要求还可采用4-5-9不等长扩展 7条使用频度最高的指令操作码
10000
10001 11110
15条使用频度稍低的指令操作码
111110000 111110001
16条使用频度稍低的指令操作码
111111111
不允许短码 是长码的前缀,各条指令的操作码一定不能重复
等长扩展
扩展操作码
每次扩展的操作码的位数相同。例如:4-8-12扩展法、 3-6-9扩展法、4-6-8扩展法
不等长扩展
指每次扩展的操作码的位数不相同。例如:4-6-10扩展 法、3-6-10扩展法
两种扩展方式很难证明哪一种肯定优于另外一种 实际中采用哪种方式,应考虑其他因素,比如,使用频度
扩展操作码
操作码用来表明本条 指令要求计算机完成 的操作
地址码用来给出参加 本次运算的操作数和 运算结果所在的地址
操作码
指令系统的每一条指令都有一个操作码 不同的指令用操作码字段的不同编码来表示 操作码的长度可以是固定,也可以是变化的 操作码长度固定:操作码集中在指令字的一个字段内
第章指令系统-PPT精品
累加器A
40H
寄存器R0
50H
内部RAM:40H
30H
内部RAM:50H
10H
(1) MOV A,#20H (2) MOV A,40H (3) MOV A,R0 (4) MOV A,R0
2020/2/25
第一章 概述
(1) A=20H (2) A=30H (3) A=50H (4) A=10H
2) 以Rn为目的地址的传送指令(3条)
和POP 。
2020/2/25
第一章 概述
5、变址寻址(index addressing )
• 以DPTR或PC为基址寄存器,A为变址寄存器,两者 内容相加形成的16位程序存储器地址为操作数地址, 又称基址+变址寄存器间接寻址。
• 如 MOVC A,A+DPTR 功能:把DPTR和A的内容相加后得到的程序存储器 地址单元的内容送A。
内 部 RAM
65H
3A H
2020/2/25
寄存器间接寻址示意图(MOV A,R0 )
第一章 概述
寄存器间接寻址的寻址范围:
• R0或R1为间接寻址寄存器寻址①片内RAM的低128 单元和②片外RAM低256单元。
• DPTR作为间接寻址寄存器寻址 片外RAM64KB单元。 • SP作间接寻址寄存器寻址 堆栈区,操作指令PUSH
2020/2/25
第一章 概述
3.3 指令系统
MCS-51单片机指令系统包括111条指令,按功能 分为:
• 数据传送指令 • 算术运算指令 • 逻辑运算指令 • 控制转移指令 • 位操作指令
2020/2/25
第一章 概述
指令的书写规则表
符号 Rn Ri #data #data16 addr16 addr11 direct rel bit (X)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机器语言程序:由机器指令书写的程序
汇编语言程序:由符号指令书写的程序 高级语言程序:由高级语言书写的程序,高级语 言的基础是语句,而不是处理器的指令系统
汇编语言程序和高级语言程序必须先翻译成机 器语言程序才能执行。这一翻译过程对汇编语 言程序叫做汇编(assemble),对高级语言 程序叫做编译(compilation)或解释 (interpretation)
•指令有两种书写格式:机器指令和符号指令。
机器指令—指令的二进制数描述
硬件只能识别机器指令,用机器指令书写的程序可
直接运行
符号指令—用规定的助记符和规定的书写格式书
写的指令
与机器指令一一对应,需要翻译成机器指令才能运
行
10110000 00000001
25.10.2020
MOV AL, 1 3
一、指令的组成
操作码 操作数
指令由操作码和操作数两部分组成
• 操作码说明计算机要执行哪种操作,如传送、运算、 移位、跳转等操作,它是指令中不可缺少的组成部 分
操作数是指令执行的参与者,即各种操作的对象
有些指令不需要操作数,通常的指令都有一个或两个 操作数,也有个别指令有3个甚至4个操作数
25.10.2020
4
二、指令的助记符格式
代码段
13
说明:
• 立即数寻址方式常用来给寄存器和存储单元赋初值。
• 在汇编语言中,立即数是以常量形式出现的。常量可以是:
(1)二进制数(后缀字母B或b)MOV BL,01000110B
(2)十进制数(不用后缀字母,或者用D或d)MOV AL,5
(3)16进制数(后缀字母H或h,以A-F开头则要加 个0) MOV AH,B8H 错 MOV AH,0B8H 正
25.10.2020
15
寄存器寻址方式
25.10.2020
16
说明:
• 寄存器寻址方式的操作数存放于CPU的 某个内部寄存器中,不需要访问存储器, 因而执行速度较快,是经常使用的方法。 在双操作数的指令中,操作数之一必是 寄存器寻址得到的。
25.10.2020
17
3 存储器寻址方式
• 操作数在主存储器中,用主存地址表示 • 程序设计时,8088采用逻辑地址表示主存地址
– 段地址在默认的或用段超越前缀指定的段寄存器中 – 指令中只需给出操作数的偏移地址(有效地址EA)
8086设计了多种存储器寻址方式
1、直接寻址方式
2、寄存器间接寻址方式
3、基址寻址方式
4、变址寻址方式
5、基址变址寻址方式
25.10.2020
18
1)直接寻址方式
• 直接寻址方式的有效地址在指令中直接给出 • 默认的段地址在DS段寄存器,可使用段超越前
25.10.2020
9
1 立即数寻址方式
• 指令中的操作数直接存放在机器代码中,紧跟在 操作码之后(操作数作为指令的一部分存放在操 作码之后的主存单元中)
• 这种操作数被称为立即数imm
– 可以是8位数值i8(00H~FFH)
– 也可以是16位数值i16(0000H~FFFFH)
• 立即数寻址方式常用来给寄存器和存储单元赋值, 多以常量形式出现
南京理工大学动力学院
2009年
25.10.2020
1
第二章 8086/8088 指令系统
2.1 概述
2.2 寻址方式
2.3 数据传送指令
2.4 算术运算指令
2.5 逻辑运算指令
2.6 串操作指令
2.7 程序控制指令
25.10.2020
2
•指令是微处理器执行某种操作的命令。 •微处理器全部指令的集合称为指令系统(指令集)
(4)字符串(确用单或双引号括起的字符,表示对应 的ASCII码值,例如:‘A’=41H)MOV AL, ’A’
(5)标识符表示的符号常量、数值表达式 MOV
AX, ’AB’
• (符号常量通过汇编伪指令定义) PI equ 314
注意十进制数和BCD数的区别
25.10.2020
MOV AX, PI+213
25.10.2020
8
8086/8088CPU的寻址方式
(1) 操作数可以存放于操作码之后 MOV AL,3FH
—立即数寻址方式 (指令中直接给出)
(2) 操作数可以存放于CPU内部的寄存器中
—寄存器寻址方式 MOV AX,BX
(3) 操作数可以存放于存储器中
—存储器寻址方式 MOV AL,[1000H]
MOV AX, 0102H
;AX←0102H
25.10.2020
10
立即数寻址方式
25.10.2020
11
例:
• 将立即数0102H送至AX寄存器
• 汇编指令: MOV AX,0102H ; • 指令功能: AX←0102H ; • 指令代码:B8 02 01
25.10.2020
12
25.10.2020
25.10.2020
7
Hale Waihona Puke 2.2 操作数的寻址方式• 指令系统设计了多种操作数的来源 • 寻找操作数的过程就是操作数的寻址 • 把寻找操作数的方式叫做(操作数)寻址方式 • 理解操作数的寻址方式是理解指令功能的前提 • 操作数采取哪一种寻址方式
–一方面,会影响处理器执行指令的速度和效率 –另一方面,对程序设计也很重要
25.10.2020
5
三、指令的操作码和操作数
• 每种指令的操作码:
– 用一个助记符表示(指令功能的英文缩写) – 对应着机器指令的一个或多个二进制编码
• 指令中的操作数:
– 可以是一个具体的数值 – 可以是存放数据的寄存器 – 或指明数据在主存位置的存储器地址
25.10.2020
6
四、程序
程序是为解决某一问题而编写在一起的指令序列。
操作码 操作数1,操作数2 ;注释
• 操作数2:常被称为源操作数src,它表示参与指令 操作的一个对象
• 操作数1:常被称为目的操作数dest,它不仅可以 作为指令操作的一个对象,还可以用来存放指令 操作的结果; dest OP src dest
• 分号后的内容是对指令的解释
汇编语句格式
• 有些指令中隐含了第一操作数,如:MUL CL
缀改变 • 用中括号包含有效地址,表达存储单元的内容
14
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
• 寄存器名表示其内容(操作数)
MOV AX, BX; AX←BX
汇编语言程序:由符号指令书写的程序 高级语言程序:由高级语言书写的程序,高级语 言的基础是语句,而不是处理器的指令系统
汇编语言程序和高级语言程序必须先翻译成机 器语言程序才能执行。这一翻译过程对汇编语 言程序叫做汇编(assemble),对高级语言 程序叫做编译(compilation)或解释 (interpretation)
•指令有两种书写格式:机器指令和符号指令。
机器指令—指令的二进制数描述
硬件只能识别机器指令,用机器指令书写的程序可
直接运行
符号指令—用规定的助记符和规定的书写格式书
写的指令
与机器指令一一对应,需要翻译成机器指令才能运
行
10110000 00000001
25.10.2020
MOV AL, 1 3
一、指令的组成
操作码 操作数
指令由操作码和操作数两部分组成
• 操作码说明计算机要执行哪种操作,如传送、运算、 移位、跳转等操作,它是指令中不可缺少的组成部 分
操作数是指令执行的参与者,即各种操作的对象
有些指令不需要操作数,通常的指令都有一个或两个 操作数,也有个别指令有3个甚至4个操作数
25.10.2020
4
二、指令的助记符格式
代码段
13
说明:
• 立即数寻址方式常用来给寄存器和存储单元赋初值。
• 在汇编语言中,立即数是以常量形式出现的。常量可以是:
(1)二进制数(后缀字母B或b)MOV BL,01000110B
(2)十进制数(不用后缀字母,或者用D或d)MOV AL,5
(3)16进制数(后缀字母H或h,以A-F开头则要加 个0) MOV AH,B8H 错 MOV AH,0B8H 正
25.10.2020
15
寄存器寻址方式
25.10.2020
16
说明:
• 寄存器寻址方式的操作数存放于CPU的 某个内部寄存器中,不需要访问存储器, 因而执行速度较快,是经常使用的方法。 在双操作数的指令中,操作数之一必是 寄存器寻址得到的。
25.10.2020
17
3 存储器寻址方式
• 操作数在主存储器中,用主存地址表示 • 程序设计时,8088采用逻辑地址表示主存地址
– 段地址在默认的或用段超越前缀指定的段寄存器中 – 指令中只需给出操作数的偏移地址(有效地址EA)
8086设计了多种存储器寻址方式
1、直接寻址方式
2、寄存器间接寻址方式
3、基址寻址方式
4、变址寻址方式
5、基址变址寻址方式
25.10.2020
18
1)直接寻址方式
• 直接寻址方式的有效地址在指令中直接给出 • 默认的段地址在DS段寄存器,可使用段超越前
25.10.2020
9
1 立即数寻址方式
• 指令中的操作数直接存放在机器代码中,紧跟在 操作码之后(操作数作为指令的一部分存放在操 作码之后的主存单元中)
• 这种操作数被称为立即数imm
– 可以是8位数值i8(00H~FFH)
– 也可以是16位数值i16(0000H~FFFFH)
• 立即数寻址方式常用来给寄存器和存储单元赋值, 多以常量形式出现
南京理工大学动力学院
2009年
25.10.2020
1
第二章 8086/8088 指令系统
2.1 概述
2.2 寻址方式
2.3 数据传送指令
2.4 算术运算指令
2.5 逻辑运算指令
2.6 串操作指令
2.7 程序控制指令
25.10.2020
2
•指令是微处理器执行某种操作的命令。 •微处理器全部指令的集合称为指令系统(指令集)
(4)字符串(确用单或双引号括起的字符,表示对应 的ASCII码值,例如:‘A’=41H)MOV AL, ’A’
(5)标识符表示的符号常量、数值表达式 MOV
AX, ’AB’
• (符号常量通过汇编伪指令定义) PI equ 314
注意十进制数和BCD数的区别
25.10.2020
MOV AX, PI+213
25.10.2020
8
8086/8088CPU的寻址方式
(1) 操作数可以存放于操作码之后 MOV AL,3FH
—立即数寻址方式 (指令中直接给出)
(2) 操作数可以存放于CPU内部的寄存器中
—寄存器寻址方式 MOV AX,BX
(3) 操作数可以存放于存储器中
—存储器寻址方式 MOV AL,[1000H]
MOV AX, 0102H
;AX←0102H
25.10.2020
10
立即数寻址方式
25.10.2020
11
例:
• 将立即数0102H送至AX寄存器
• 汇编指令: MOV AX,0102H ; • 指令功能: AX←0102H ; • 指令代码:B8 02 01
25.10.2020
12
25.10.2020
25.10.2020
7
Hale Waihona Puke 2.2 操作数的寻址方式• 指令系统设计了多种操作数的来源 • 寻找操作数的过程就是操作数的寻址 • 把寻找操作数的方式叫做(操作数)寻址方式 • 理解操作数的寻址方式是理解指令功能的前提 • 操作数采取哪一种寻址方式
–一方面,会影响处理器执行指令的速度和效率 –另一方面,对程序设计也很重要
25.10.2020
5
三、指令的操作码和操作数
• 每种指令的操作码:
– 用一个助记符表示(指令功能的英文缩写) – 对应着机器指令的一个或多个二进制编码
• 指令中的操作数:
– 可以是一个具体的数值 – 可以是存放数据的寄存器 – 或指明数据在主存位置的存储器地址
25.10.2020
6
四、程序
程序是为解决某一问题而编写在一起的指令序列。
操作码 操作数1,操作数2 ;注释
• 操作数2:常被称为源操作数src,它表示参与指令 操作的一个对象
• 操作数1:常被称为目的操作数dest,它不仅可以 作为指令操作的一个对象,还可以用来存放指令 操作的结果; dest OP src dest
• 分号后的内容是对指令的解释
汇编语句格式
• 有些指令中隐含了第一操作数,如:MUL CL
缀改变 • 用中括号包含有效地址,表达存储单元的内容
14
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
• 寄存器名表示其内容(操作数)
MOV AX, BX; AX←BX