指令系统是指计算机能够执行的全部指令的集合
汇编语言所具备的作用
- 指出进行什么操作,这由指令操作符来表明
- 指出指令涉及的操作数和操作结果放在何处,就是操作数的寻址方式
概述
计算机是通过执行指令序列来解决问题的。
指令是指示计算机执行某种操作的命令,指令的集合称为指令系统。
指令的符号用规定的英文字母组成,称为助记符,用助记符表示的指令称为汇编指令或符号指令。
1、指令的构成
计算机中的指令由操作码和操作数两部份构成。
- 操作码也称指令码,操作码说明计算机要执行哪些操作,如传送、位移、跳转、运算等操作,不可缺少。
- 操作数是指参加本指令运算的数据,也就是各种操作的对象。(可以是操作的数据,也可以是操作数据的地址)
微型计算机的指令通用格式
1.1、操作码域
操作码域存放指令的操作码,即指明计算机要执行的操作类型。在汇编语言中用指令助记符代表。
1.2、操作数或操作数地址域
该域指出在指令执行过程中所需要的操作数或操作数所在的地址。
2、8086指令的基本格式
根据指令的不同,操作数可以是一个,即但操作数,也可以是两个,即双操作数(源操作数、目的操作数)。
有的指令可以没有操作数或隐藏操作数,如指令 MOV AX, DX
中的 MOV 是助记符,AX,DX为操作数(双操作数),这条指令的功能是将DX中的内容送到 AX中。
8086的数据类型
1、基本数据类型
8086的基本数据类型是 字节、字、双字。
在Intel 80486中引入了四字(8字节,64位),在Pentium III处理器中引入了双四字(16字节,128位)。
基本数据在内存中作为操作数引用的顺序,对于字而言,低字节存放在低地址单元,高字节存放在高地址单元,低地址即为该数据的地址。
2、数据与编码
在计算机中,操作数均为二进制数,但在指令中,操作数类型根据编程者的定义或约束,可以分为以下类型。
2.1、无符号数
对于8位无符号数,其值范围为0-255(00H-FFH),对于16位无符号数,其值范围为0-65535(0000H-FFFFH)。
2.2、带符号数
**带符号数用补码表示。**对于8位带符号数,其值范围为-128-+127(80H-7FH),对于16位无符号数,其值范围为-32768-32767(8000H-7FFFH)。
2.3、符号的编码
一般英文字母的符号与常用符号采用 ASCII 编码。如果指令中的立即数是字符,可以用单引号括起来。例如: MOV AL, 'B'
,字符B用ASCII表示,自动转换成 42H。
2.4、BCD码
BCD码十进制数转二进制数,可用4位二进制数进行编码。
例如:23H——>00100011B