微机汇编常见基础知识点汇总

微机汇编常见基础知识点汇总(针对考试的知识点总结)

一、最基础的架构

1.三个段的架构

DATAS SEGMENT
;此处输入数据段代码
DATAS ENDS

STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV AH,4CH
INT 21H
CODES ENDS
END START

2.数据段

1)字符串
确定的字符串:
一般字符串结尾加“$”:

BUF1 DB ‘DHUAODF HDHD$’;

字符串长度:
COUNT EQU $-BUF1 ;

不确定的字符串:
BUF DB 20 DUP(?) ;该数据段占用20字节
BUF DB 10 DUP(‘$’)

dup的使用格式如下:
db重复的次数 dup(重复的字节型数据)
dw重复的次数 dup(重复的字型数据)
dd重复的次数 dup(重复的双字数据)

3.堆栈段(不常用)

4.代码段

1)系统调用
MOV AH,01H
INT 21H

常用AH值:
在这里插入图片描述

二、按实现功能分类

1.字符串操作

1)字符串长度
①数据段获取
COUNT EQU $-BUF1 ;字符串长度
②输入的字符串buf
长度存储在buf[1]中
MOV CX,BUF[1]

2)字符串比较、复制、转移
操作流程:
SI寄存器保存源串首地址;
DI寄存器保存目的串首地址;
CX寄存器保存字符串长度;
CLD或STD指令设置字符串处理方向;
当CLD指令使DF=0,在执行串处理指令时可使地址自动增量;STD使DF=1,在执行串处理指令时可使地址自动减量。

重复前缀:
REP无条件重复前缀:至CX为0
REPE/REPZ:至CX为0,或ZF为0(两个操作数不等)
REPNE/REPNZ:至CX为0,或ZF不为0(两个操作数相等)

字符串操作指令:
lodsb/lodsw:把DS:SI指向的存储单元中的数据装入AL或AX,然后根据DF标志增减SI;
Stosb/stosw:把AL或AX中的数据装入ES:DI指向的存储单元,然后根据DF标志增减DI;
Movsb/movsw:把DS:SI指向的存储单元中的数据装入ES:DI指向的存储单元中,然后根据DF标志分别增减SI和DI;
Scasb/scasw:把AL或AX中的数据与ES:DI指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI;
Cmpsb/cmpsw:把DS:SI指向的存储单元中的数据与ES:DI指向的存储单元中的数据相减,影响标志位,然后根据DF标志分别增减SI和DI;

2.比较,标志位

转移指令:
JMP无条件跳转
条件转移指令JXX:
表 1条件转移指令标志位的状态
在这里插入图片描述

表 2无符号数条件转移指令条件
在这里插入图片描述

表 3带符号数条件转移指令条件
在这里插入图片描述

表 4循环控制指令
在这里插入图片描述

3.算术运算

ADD表示加法指令,ADC表示带进位加法指令, SUB表示减法指令,SBB表示带进位减法指令。
MUL表示无符号数乘法指令,IMUL表示带符号数乘法指令,DIV表示无符号数除法指令,IDIV表示带符号数除法指令。
CBW表示从字节扩展到字的指令,CWD表示从字扩展到双字的指令。

BCD码的调整指令:
在进行十进制加减运算时,需要将数据用BCD码表示,还要考虑到是组合BCD码还是非组合BCD码,组合BCD码是用一个字节表示两位十进制数,非组合BCD码是用一个字节表示一位十进制数,对于组合的BCD码加减法运算其结果存放在AL中。

组合的BCD码加法调整指令DAA;
组合的BCD码减法调整指令DAS;
非组合的BCD码加法调整指令AAA;
非组合的BCD码减法调整指令AAS;
乘法的非组合BCD码调整指令AAM;
除法的非组合BCD码调整指令AAD。

8088/8086指令系统提供了实现加、减、乘、除运算指令, 可参照表5所示内容。

表 5 数据类型的数据运算表
表 5 数据类型的数据运算表

4.调试
表 6标志名和状态符号的对照表参照表
在这里插入图片描述

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值