文章
1
粉丝
262
获赞
0
访问
29.9k
熟悉二进制、十六进制与十进制的关系
整数:补码,有符号表示与无符号表示
加法:判断溢出的方法:双符号位法
汇编代码,能看懂,根据些许C语言推到汇编代码或者根据汇编代码反推C语言就行
数据格式:b(字节 -- 8位),w(字 -- 16位),l(双字 -- 32位)
数据传输指令: movs(有符号)、movz(无符号)
算术和逻辑操作:
inc D(D+1) | dec D(D-1) | neg D(-D) | not D(~D) |
---|---|---|---|
add S, D | sub S, D | imul S, D | xor S, D |
or S, D | and S, D | ||
sal k, D 左移 | shl k, D 左移 | sar k, D 算术右移 | shr k, D 逻辑右移 |
leal S, D:加载有效地址 → 可运用为加法运算
控制:
CF:进位标志(1:进位)
ZF:零标志(1:为0)
SF:符号标志(1:为负)
OF:溢出标志(1:溢出)
指令 | 同义名 | 描述 |
---|---|---|
jmp X | 直接跳转 | |
je X | jz | 相等/零 |
jne X | jnz | 不相等/非零 |
js X | 负数 | |
jns X | 非负数 | |
jg X | jnle | 大于(有符号>) |
jge X | jnl | 大于或等于(有符号>=) |
登录后发布评论
暂无评论,来抢沙发