总结于《X86汇编语言 从实模式到保护模式》

  仅适用于X86系列处理器

1. 两者的区别:

  例:mov ds, ax
  A.在指定16位编译模式下,产生的二进制码是 8E D8
  B.在指定32位编译模式下(在某些老式的编译器中才会出现的),产生的二进制码是 66 8E D8

2. 影响:
  A.加上0x66的前缀是为了反转默认的操作数大小。因为32位模式下,默认的操作数大小是4字节的,而指令中的源操作数是16位的AX。
  B.有前缀和没前缀相比,CPU在执行时会多花一个额外的时钟周期。

3. 解决
  A. 使用32位的源操作数,但是高地址部分会被截断。也让人难以理解。如:
    mov ds, eax
    编译出来的二进制指令是:8E D8
  B. 使用NASM编译器,NASM编译器无论在什么样的处理器模式下,编译出来的指令都是一样的。

[BITS 16]
MOV DS, AX    ;8E D8
MOV DS, EAX ;8E D8
[BITS 32]
MOV DS, AX    ;8E D8
MOV DS, EAX    ;8E D8

转载于:https://www.cnblogs.com/Jer-/p/3176551.html

mov sreg, r/m16 在16位和32位编程中的区别相关推荐

  1. 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16...

    一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 ...

  2. 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16

    一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 ...

  3. PS中的颜色模式,8位、16位、32位区别、以及背景内容的区别

    颜色模式 RGB模式:又称"真彩色模式",是电脑美工设计人员最熟悉的色彩模式.RGB模式是将红(Red).绿(Green).蓝(Blue)3种基本颜色进行颜色加法(加色法),配置出 ...

  4. 8位, 16位,24位,32位图片显示原理及对比

    我们都知道一张图片可以保存为很多种不同的格式,比如bmp/png/jpeg/gif等等.这个是从文件格式的角度看,我们抛开文件格式,看图片本身,我们可以分为8位, 16位, 24位, 32位等. 单击 ...

  5. C语言:8位、16位、32位数据转换

    先看一下测试代码 #include <stdio.h>int main() {/* Write C code in this online editor and run it. */int ...

  6. 计算机64位中浮点数系,关于浮点数:在16位,32位和64位IEEE-754系统中可以表示什么范围的数字?...

    我对浮点数的表示方式有些了解,但恐怕还不够. 普遍的问题是: For a given precision (for my purposes, the number of accurate decima ...

  7. 关于单片机位数的思考(8位、16位、32位)

    ================================ 关于单片机位数的思考(8位.16位.32位) ================================ 8位.16位.32位是 ...

  8. admin密码对应的MD5值,16位和32位,admin解密自己留着方便.

    admin密码对应的MD5值,16位和32位,自己留着方便.admin的md5值是多少,常用密码加密md5值,123456,admin,admin888 如果遇到MD5加密文件(一般都是这个),而又不 ...

  9. node 16位 转24位_C代码实现16位和32位数据字节序转换

    点击上方公众号名称关注,获得更多内容 ✎ 编 者 悟 语 每天给自己一个存在的意识,这样才会有一颗认真的心. 文 章 导 读 今天给大家用C代码实现下大小端字节序的转换代码,感谢的小伙伴可以拿下来撸一 ...

最新文章

  1. SharePoint 学习笔记(一)
  2. mastered skills
  3. 云迹科技:站在酒店场景服务机器人的风口
  4. 同事反馈环:为什么度量和会议还不够充分
  5. unity3d中画线有几种方式_Spring RestTemplate中几种常见的请求方式
  6. 笑翻了!想象的论文答辩和真实的论文答辩
  7. Oracle优化笔记
  8. mysql 多表 update sql语句总结
  9. 国外经典!架构师必备:《MongoDB实战》第2版
  10. C语言函数二维数组传递方法
  11. 计算机网络中的mac全称,计算机网络中MAC地址与IP地址
  12. html网页背景图像失真,CSS实现页面背景图片模糊内容不模糊的方法
  13. java sqlldr_sqlldr使用(转)
  14. OSChina 周三乱弹 —— 别人介绍了个妹纸 现在……
  15. 差分 --算法竞赛专题解析(32)
  16. vue.js — 安装Webpake创建一个完整的项目并上传至码云
  17. python输入某年某月输出天数_编写程序计算某年某月的天数.输入年份year和月份month,输出该月份的天数...
  18. 桃李教育 高中计算机教师,一名信息技术老师的立德树人情怀~
  19. [8th of series6] Step1: Label Each Block’s Mining Pool
  20. 上林赋 汉 司马相如

热门文章

  1. 论文笔记 《Maxout Networks》 《Network In Network》
  2. jQuery中append、insertBefore、after与insertAfter方法注意事项
  3. Python+selenium 自动化-chrome页面静止、冻结技术,获取web动态页面的Xpath方法,查看浏览器动态dom节点
  4. 字符串(0-9和小数点)转为数字--atof,数字转化为字符串--sprintf
  5. 字符串转为小数点,乘以一个数以后,转换为科学计数法,再把科学计数法转化为字符串
  6. CTFshow 文件包含 web117
  7. 在二叉树中找值为x的结点(假设所有结点的值都不一样)
  8. 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
  9. opencv简单滤波
  10. 解决oracle主键问题,解决renren-security使用oracle主键问题