51-汇编学习笔记(一)
来源:互联网 发布:青岛seo外链外包 编辑:程序博客网 时间:2024/06/05 03:57
51-汇编学习笔记(一)
1. 名词解释
CF 进位标志寄存器 无符号操作的溢出,当溢出时被置为1ZF 零标准寄存器 当计算结果为0时会被置为1SF 符号标志寄存器 当计算结果为负数时会被设为1OF 溢出标志寄存器 当计算结果导致了补码溢出时会被置为1DPTR 数据指针
2. 51-汇编常用指令
PUSH data 直接字节进栈,SP加1
POP data 直接字节出栈,SP减1
XCH A,Rn 寄存器与A交换
XCH A,data 直接字节与A交换
SWAP A A半字节交换
MOV 传送
MOVX 传送外部数据
NOP 空操作
DA A A十进制调整
DEC A A减1
DIV AB A被B除
/*逻辑运算*/
ANL 逻辑与 &
ANL C,bit 直接位与上进位位
ANL C,/bit 直接位的反码与上进位位
ORL 或 |
XRL 异或
/*位运算*/
SETB C 进位位置1
SETB bit 直接位置1
CLR 清零
CPL A A取反码
RL A A循环左移1位
RLC A A带进位左移1位
RR A A右移1位
RRC A A带进位右移1位
/*算数运算*/
ADD A,@Ri 间接RAM加到A
ADDC A,@Ri 间接RAM带进位位加到A
SUBB A,data 从A中减去直接字节和进位
INC 自加
INC A A加1
INC data 直接字节加1
INC DPTR 数据指针加1
/*转移指令*/
AJMP addr 11 绝对转移
LJMP addr 16 长转移
SJMP re1 短转移
JMP @A+DPTR 相对于DPTR间接转移
JZ rel 若A=0则转移
JNZ rel 若A≠0则转移
JC rel 若C=1则转移
JNC rel 若C≠1则转移
JB bit,rel 若直接位=1则转移
JNB bit,rel 若直接位≠1则转移
JBC bit,rel 若直接位=1则转移且清除
CJNE A,data,rel 直接数与A比较,不等转移
DJNZ Rn,rel 寄存器减1不为0转移
/*程序调用*/
ACALL addr 11 绝对子程序调用
LCALL addr 16 子程序调用
RET 子程序调用返回
RETI 中断程序调用返回
eg1:A=10H,R0=33HADD A,R0 把10单元的内容和R0单元的内容相加存在A中(A)=(A)+(R0) ADD A,33H 把10单元的内容和33单元的内容相加存在A中(A)=(A)+(33H) ADD A,#33H 把10单元的内容和33相加存在A中 (A)=(A)+33执行的结果也是不一样的。
- 51-汇编学习笔记(一)
- 汇编学习笔记(一)
- 汇编学习笔记(一)
- 汇编学习笔记(一)
- 汇编学习笔记(一)
- 汇编学习笔记(一)
- 汇编学习笔记一
- 汇编学习笔记《一》
- Win32汇编学习笔记(一)
- IBM PC汇编学习笔记(一)
- Win32汇编学习笔记(一)
- IL 汇编学习笔记(一)
- 汇编入门学习笔记(一)
- 汇编学习笔记(一) 基础知识概要
- 汇编学习笔记(一)-- 基本知识
- WIN32汇编学习笔记(一) 汇编环境搭建
- WIN32汇编学习笔记(一)
- 汇编--学习笔记(一)-寄存器(一)
- 为Spring配置文件添加提示功能
- lvs 网卡多队列
- 自定义圆形Drawable
- 动态链接库(二)-访问MFC动态链接库c++类和资源
- 在React-Native中使用redux
- 51-汇编学习笔记(一)
- 离散题目5
- 素数线性筛(O(N)!!!)
- LeetCode-582. Kill Process (JAVA)杀死进程
- Android EditText 去除编辑功能,保留点击移到光标效果。去除 屏蔽 双击全选
- 用swoole framework 实现远程接口调用RPC
- c++导出全局变量给lua使用
- 读取指定字符串后面的数值
- POJ