x86运算指令
来源:互联网 发布:jsp工资管理系统源码 编辑:程序博客网 时间:2024/05/23 02:28
x86指令详解
运算指令
乘法指令
有符号乘指令
- 单操作数的有符号乘指令
格式: imul ops功能:字节乘法 (al) * ops --> ax 字乘法 (ax) * (ops) --> dx, ax 双字乘法 (eax) * (ops) --> edx, eax注意: mov eax, 700000 mov ebx, 100000 imul ebx; 可以看出将乘法高位存储到 edx中,低位存储到eax中如果乘积的高位不是低位的符号扩展的话,CF = 1 OF = 1, 否则 CF = 0 OF = 0乘法指令不影响 SF ZF AF PF位
- 双操作数的有符号乘指令
格式: imul opd, ops功能: (opd) * (ops) --> opd注意: opd可以是16/32位的寄存器, ops可以是同类型的寄存器,存储器操作数或者是立即数实例: imul ax, bximul eax, dword ptr [si]imul ax, 4
- 三操作数的有符号乘指令
格式: imul opd, ops, n功能: (ops) * n --> opd注意: opd可以是16/32位的寄存器, ops可以是同类型的寄存器,存储器操作数, n为立即数imul bx, ax, 10imul eax, dword ptr [si], 3
- 无符号乘指令
格式: mul ops功能: 字节乘法 (al) * (ops) --> ax 字乘法 (ax) * (ops) --> dx, ax 双字乘法 (eax) * (ops) --> edx, eax如果高位不为0,则CF = 1 OF = 1, 否则CF = 0 OF = 0
符号扩展指令
在编写 mov si, al 语句的时候,操作数类型不一致出现错误
如果al 无符号数的话,可以使用一下方式替代
mov ah, 0
mov si, ax
如果al 是有符号的话,先判断 al 是正数还是负数,决定ah扩展为0还是 0ffh
- 将字节转换为字指令
格式:cbw功能:将 al 中的符号扩展到 ah 中实例: mov al, 80h cbw ; ax = 0ff80h
- 将字转换双字指令
格式: cwd功能: 将 ax 中的符号扩展到 bx 中实例: mov ax, 8000h cwd ; (dx) = 0ffff (ax) = 8000h
- 带符号扩充传送
movsx opd, ops
将 ops 的符号位向前扩展成 opd
除法指令
- 有符号除指令
格式:idiv ops功能:字节除法 (ax) / (ops) --> al(商) ah(余数) ; 注意ah为0 字除法 (dx, ax) / (ops) --> ax(商) dx(余数) ;注意dx为0 双字除法 (edx, eax) / (ops) --> eax(商) edx(余数) ;注意edx为0实例: 字节除法 mov ax, 32;注意 ah需要为0 否则出错, 进行的是字节除法,被除数为 al mov bl, 2 idiv bl 自除法 mov ax, 4000h cwd ;将ax 扩展为 dx, ax mov cx, 4 idiv cx
- 无符号除指令
格式: div ops功能: 字节除法 (ax) / (ops) --> al(商) ah(余数) ; ah为0 字除法 (dx, ax) / (ops) --> ax(商) dx(余数) ; dx为0 双字除法 (edx, eax) / (ops) --> eax(商) edx(余数) ; edx为0实例: mov ax, 400 mov dx, 0 mov bx, 3 idiv bx
0 1
- x86运算指令
- 80X86学习笔记--算术运算指令
- X86指令
- X86指令
- x86汇编指令详解
- x86汇编指令(1)
- x86汇编指令(2)
- x86 体系指令
- 80x86 汇编指令
- x86 转移指令机器码
- X86中的RDTSC指令
- X86汇编指令格式
- x86汇编指令手册
- arm,x86指令对比
- X86指令发展简介
- 80X86伪指令
- X86汇编 伪指令
- x86汇编指令集
- 客户端:表单验证
- Sql查重、删除多余重复记录
- MySQL里实现类似SPLIT的分割字符串的函数
- 【常用包类】Scanner。
- 线性筛与欧拉函数、莫比乌斯函数
- x86运算指令
- LinkedHashMap
- 高并发解决方案
- 代码赏析:子窗口对于键盘和鼠标的响应
- effective java 读书笔记---第五章 泛型
- java 运算符
- vmstat命令
- Html 第一份作业
- mysql JS 计算两GPS坐标的距离函数: