当前位置:网站首页>汇编语言入门-总结
汇编语言入门-总结
2022-06-10 12:40:00 【51CTO】
学习汇编语言,是为了学习安全技术,为了看懂汇编代码。
根据王爽老师的《汇编语言》书籍,总结以下几点。
当然我们坚持一条原则,少用的知识通过工具查询。

常用指令:
1、通用数据传送指令.
MOV 传送字或字节.
PUSH 把字压入堆栈.
POP 把字弹出堆栈.
2. 输入输出端口传送指令.
IN I/O端口输入. ( 语法: IN 累加器, {端口号│DX} )
OUT I/O端口输出. ( 语法: OUT {端口号│DX},累加器 )
输入输出端口由立即方式指定时, 其范围是 0-255; 由寄存器 DX 指定时,
其范围是 0-65535.
3. 目的地址传送指令.
LEA 装入有效地址.
例: LEA DX,string ;把偏移地址存到DX.
LDS 传送目标指针,把指针内容装入DS.
例: LDS SI,string ;把段地址:偏移地址存到DS:SI.
LES 传送目标指针,把指针内容装入ES.
例: LES DI,string ;把段地址:偏移地址存到ES:DI.
LSS 传送目标指针,把指针内容装入SS.
例: LSS DI,string ;把段地址:偏移地址存到SS:DI.
4. 标志传送指令.
LAHF 标志寄存器传送,把标志装入AH.
SAHF 标志寄存器传送,把AH内容装入标志寄存器.
PUSHF 标志入栈.
POPF 标志出栈.
PUSHD 32位标志入栈.
POPD 32位标志出栈.
5、算术运算指令
ADD 加法.
ADC 带进位加法.
INC 加 1.
SUB 减法.
SBB 带借位减法.
DEC 减 1.
NEC 求反(以 0 减之).
CMP 比较.(两**作数作减法,仅修改标志位,不回送结果).
MUL 无符号乘法.
DIV 无符号除法.
6、逻辑运算指令
AND 与运算.
OR 或运算.
XOR 异或运算.
NOT 取反.
TEST 测试.(两**作数作与运算,仅修改标志位,不回送结果).
SHL 逻辑左移.
SHR 逻辑右移.
7、串指令
DS:SI 源串段寄存器 :源串变址.
ES:DI 目标串段寄存器:目标串变址.
CX 重复次数计数器.
MOVS 串传送.
( MOVSB 传送字符. MOVSW 传送字. MOVSD 传送双字. )
CMPS 串比较.
( CMPSB 比较字符. CMPSW 比较字. )
8、程序转移指令
1>无条件转移指令 (长转移)
JMP 无条件转移指令
CALL 过程调用
RET/RETF过程返回.
2>条件转移指令
JB/JNAE 小于转移.
JG/JNLE 大于转移.
JL/JNGE 小于转移.
JE/JZ 等于转移.
JNE/JNZ 不等于时转移.
JNP/JPO 奇偶性为奇数时转移.
JNS 符号位为 "0" 时转移.
JP/JPE 奇偶性为偶数时转移.
3>中断指令
INT 中断指令
IRET 中断返回
常用查询工具:
汇编金手指

汇编指令的帮助手册

JZ这个指令我们不知道什么意思,可以对此进行查询。

常用的导航栏为指令系统、32位指令。
后期我们会通过OllyDebug分析进行深入学习。
"OllyDebug,简称OD,一种反汇编软件,动态追踪工具,Ring 3 级的调试器。
OllyDebug的使用界面是可视化操作。"

参考文章:
边栏推荐
- Vdo-slam source code reading notes [1] dynamic obj part in track()
- JS use the Icheck plug-in to listen and get the value of the checkbox
- 施一公等团队登Science封面:AI与冷冻电镜揭示「原子级」NPC结构,生命科学突破
- Office technical lecture: punctuation - Chinese - vertical
- excel异步导出
- MySQL master database operation large table DDL, slave database crash and system parameter error setting
- JS click the button to slide to the left
- Practical cases, in-depth analysis
- 使用SoapUI工具生成发送短信接口代码
- CMakeLists. Txt how to write
猜你喜欢

C # balanced weight distribution

JTAG to Axi master debugging Axi Bram controller

(1) Pretreatment summary

Vdo-slam: a visual dynamic object aware slam system paper reading

从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分

IQR box diagram

Count the number and average value of natural numbers whose sum of bits within 100 is 7

Stereo vision based semantic 3D object and ego motion tracking for automotive driving

UML类图

Mobile phone manufacturers "go back to their ancestors", only apple said no
随机推荐
蔚来:“拿捏”了数据,“扭捏”着未来
Find the number of common subsequences of K strings
别把“IT信息化”不当“超级工程”
Automatic mapping of tailored landmark representations for automated driving and map learning
20-year technical veteran gives up his CTO title! Why did the startup attract him?
Practical cases, in-depth analysis
微信web开发工具使用教程,公司开发web
从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分
Xshell 评估期已过怎么办? 按照以下步骤即可解决!
[flinlk] dynamic Kerberos authentication in Flink pit
SparkStreaming实时数仓 问题&回答
Give root password for maintenace (or press Control-D to continue): solution
MySQL数据库(26):视图 view
excel异步导出
用GNN做CV三大任务的新骨干,同计算成本性能不输CNN、ViT与MLP|中科院&华为诺亚开源...
20年技术老兵放弃大厂CTO头衔!这家创业公司凭什么吸引他?
QT database application 22 file coding format recognition
(5) Class, object and class file splitting operation (2)
使用unique快速删除重复元素
Software project management 6.10 Cost budget