文档介绍:第 3 章80x86的指令系统和寻址方式
本章重点(1)
能够正确使用以下各类指令:
1)数据传送指令;
2)算术运算指令;
3)逻辑运算和移位指令;
4)串处理指令;
5)控制转移指令;
6)处理机控制指令。
本章重点(2)
能够根据不同的寻址方式掌握对源操作数和目的操作数的物理地址的确定
重点掌握算术运算和逻辑运算指令执行后对状态标志SF,ZF,CF,OF位的置位和复位的条件
能够正确分析给定指令组所完成的功能和运行结果,并能灵活选用各种指令完成指定的操作
学习方法
学硬背,而是应该根据其记忆符的英文含义和各类指令的不同功能来灵活掌握
重点掌握8086/8088的寻址方式和指令系统
然后推广到80386及后继机型的情形,比较对照
0、指令系统概述
机器指令
以二进制代码(机器码)表示指令
直接,不易读懂
汇编指令
以符号形式表示指令
易读,需要翻译(汇编)
与CPU相关
指令系统
指令组成:计算机中的指令由操作码字段和操作数字段两部分组成
指令的格式:
操作码
操作数1
…
操作数n
指令成分
操作码(操作的性质)
表示指令应完成的具体操作
以助记符的形式表示
操作数(操作的对象)
表示指令的操作对象(参与操作的对象)
源操作数、目的操作数
操作数字段
指令分类:(按操作数分)
单操作数指令:OPR DEST
双操作数指令:OPR DEST, SRC
三操作数指令:OPR DEST,SRC,SRC1
无操作数: OPR (隐含操作数)
指令的操作码字段和操作数字段的表示
每个操作用确定的二进制代码表示
操作数字段:情况很多,也很复杂
汇编用助记符表示操作码,用符号或符号地址表操作数
指令、程序初步-1
从键盘输入一个字符,然后从屏幕输出
CODE SEGMENT
ASSUME CS:CODE
START:
MOV AH,1
INT 21H
MOV DL,AL
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
指令、程序初步-2
从键盘输入2个字符,存放于字节变量A、B中,然后从屏幕输出这2字符。
Datarea segment
A DB ?
B DB ?
datarea ends
code segment ;定义代码段
assume CS:code,DS:datarea
start: MOV AX, datarea
MOV DS,AX
MOV AH,1
INT 21H
MOV A,AL
MOV AH,1
INT 21H
MOV B,AL
MOV AH,2
MOV DL, A
INT 21H
MOV DL, B
INT 21H
MOV AH,4CH
INT 21H
Code ENDS
END start