linux access函数报错,详解汇编语言MOV指令
在汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,用于将一个数据从源地址传送到目标地址(寄存器间的数据传送本质上也是一样的)。
32位指令集
1、一般传送指令
MOV指令:
格式:
MOV目的-->除CS、IP以外的寄存器或存储器
源-->寄存器、存储器、立即数
ex :
MOV ECX ,EDX ; EDX->ECX
ECX =00000034H
EDX =00000052H
指令执行结果: ECX = 00000052H, EDX不变,标志寄存器也不变。
MOVSX、MOVZX指令:
格式:
MOV目的-->寄存器或存储器
源-->寄存器、存储器
MOVSX:按符号扩展传送数据指令,将源操作数的内容---传送-->目标操作数。目的操作数左边空缺的为用源操作数的符号进行填充。可对有符号的数进行扩展,以便运算。
MOVZX:按零扩展传送数据指令,将源操作数的内容---传送-->目标操作数。目的操作数左边空缺用0填充。可对无符号的数进行扩展,以便运算。
ex:
MOV BL, 80H; 80H->BL
MOVSX AX, BL ; 80H用符号扩展为FF0H->AX
MOVZX AX, BL ; 80H用零扩展为0080H->AX
标志寄存器状态不变。
XCHG指令 :
格式:
XCHG目的、源-->两个操作数,其中一个操作数可为通用寄存器,另一个操作数可为通用寄存器或存储器,两个操作数的长度必须一致。
ex:
XCHG BH,BL ;BH和BL进行字节交换
XCHG SI, DI ;SI和DI进行字节交换
XCHG EBX,ECX ;EBX和ECX进行双字节交换
XCHG AL,MEM_BYTE ;寄存器和内存进行字节交换
XCHG MEM_WORD, AX ;寄存器和内存进行字节交换
XCHG ESI,MEM_DWORD ;寄存器和内存进行双字节交换
标志寄存器状态不变。
下面看下小编遇到的问题:汇编语言MOV指令
MOV AX,BX
MOV AH,BX
MOV DX,AL
第二句都错误,,那么第三句呢(8位数据放到16位REG里),,
若正确,放高8位还是低8位呢??? 高8位都补0???
解决:
在汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,用于将一个数据从源地址传送到目标地址(寄存器间的数据传送本质上也是一样的)。其特点是不破坏源地址单元的内容。
例如:
1、MOVAX,2000H;将16位数据2000H传送到AX寄存器。
2、MOVAL,20H;将8位数据20H传送到AL寄存器。
3、MOVAX,BX;将BX寄存器的16位数据传送到AX寄存器。
4、MOVAL,[2000H];将2000H单元的内容传送到AL寄存器。
扩展资料:
汇编语言特点:
1、机器相关性
这是一种面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的。因为是机器指令的符号化表示,故不同的机器就有不同的汇编语言。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。
2、高速度和高效率
汇编语言保持了机器语言的优点,具有直接和简捷的特点,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等,且占用内存少,执行速度快,是高效的程序设计语言。
总结
以上所述是小编给大家介绍的汇编语言MOV指令,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
时间: 2020-01-19
linux access函数报错,详解汇编语言MOV指令相关推荐
- python def函数报错详解_Python函数详解
一.Python中函数的概念 1.python中函数概念 Python中函数是逻辑结构化和过程化的一种编程方法. 2.python中函数定义方法解释 def name(a): "The fu ...
- python def函数报错详解_python自定义函数def的应用详解
这篇文章主要介绍了python自定义函数def的应用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 这里是三岁,来和大家唠唠 ...
- python def函数报错详解_JSer 快速入门 Python 之函数详解
前一篇文章,用一天的时间,通过与 JavaScript 做对比的方式,快速领略了 Python 全貌. 梳理了那么多,若忽略细节差异,两门语言只有两个重要差异: 1.书写风格上大相同 2.功能覆盖上, ...
- python def函数报错详解_【python】详解python函数定义 def()与参数args、可变参数*args、关键参数**args使用实例...
Python内置了很多函数,可以直接调用.Python内置的函数可以通过官方文档查看.也可以通过help()查看帮助信息.函数名是指向函数对象的引用,把函数名赋给变量,相当于给函数起了别名. 1. 定 ...
- python def函数报错详解_python所有内置函数的定义详解
>>> def hello_world(): ... print('Hello,world!') # 注意函数体要有缩进 ... >>> hello_w ...
- 安装linux子系统报错,详解win10电脑中安装linux子系统出现错误0x80070057方法
现在很多的小伙伴在安装系统的时候都是选择安装双系统的操作的,那其实可以根据需求安装 Win10的系统还有linux系统的是很常见的开发用户的程序的选择,win10电脑就内置有linux子系统的,安装出 ...
- Nginx安装配置报错详解
*Nginx* ****正向代理:****客户端/浏览器-服务器 ****反向代理:****客户端-反向代理服务器-服务器 ****负载均衡:****将请求分发到多个不同的服务器 ****动静分离:* ...
- Win10DB210.1企业版的安装卸载DB2建库建表空间执行sql脚本SQL5005C、SQL8027N license许可证等报错详解
注意事项 以下是我在使用DB2软件在过程中遇到的一系列的问题和报错,我将它们全部总结归纳在一起,希望对其他和我一样的同学能有帮助. ①.Win10的系统貌似是只支持DB210以上的版本的安装,我层尝试 ...
- 【JDK】输入命令Javac报错详解
问题 相信很多人都经历过配置环境变量失败的经历,尤其是很多时候明明按照老师教的步骤或者教程上的方法循规守矩配置却还是出错. 下面我们来解决一个非常蹊跷的问题---输入Java和Java -versio ...
- BIOS英文报错详解;你虽会做系统,但你会看BIOS英文报错吗,仅供大家参考学习。...
有很多朋友英文不是很好,开机自检时出现问题后会出现各种各样的英文短句看不懂,但做系统没问题,可一碰到BIOS英文报错就傻眼啦,下边收集一些报错解释供大家参考学习: 1.cmos battery fai ...
最新文章
- spring-data-jpa
- 破解系统设计访谈:Twitter软件工程师的提示
- SHELL test [ 命令用法
- 建立远程桌面连接计算机无密码,win7远程桌面空密码的步骤_win7系统如何设置让远程桌面登录无需密码-win7之家...
- JS-函数(调用返回值)-形参实参-作用域
- php类的实例化方法,php中类的定义和实例化方法
- Python Windows文件操作
- 又一百度杰出科学家离职,百度研究院成中国AI的黄埔军校?
- 带有SeekBar的Android Media Player歌曲
- oracle学习的一些网站收藏
- 【PM2.5预测】基于matlab灰色模型PM2.5预测【含Matlab源码 499期】
- 林子雨大数据java练习
- js 封装websocket (包括心跳检测,断线重连等)
- 【产品】固定成本、可变成本、沉没成本和机会成本
- 全国计算机等级考试二级Python(2021年9月)备考笔记 第六天
- 两南之行,自然文艺、轻奢浪荡
- 社会网络分析法SNA
- html背景音乐自动播放embed,HTML中添加音乐video embed audio
- docker nginx容器代理bug:upstream server temporarily disabled
- 百度搜索推广账户搭建思路
热门文章
- asp.net mvc bundle中数组超出索引
- http://www.cnblogs.com/peida/archive/2013/05/31/3070790.html深入理解Java:SimpleDateFormat安全的时间格式化...
- Asp.net WebApi版本控制
- 我的cocos2d-x集成sharesdk之旅(转)
- linux后台运行程序(secureCRT断掉或关闭后继续运行程序)
- 一般人想象不到的创业者付出的5种努力 创业者的背后
- C#中,如何随意拖动PictureBox?
- MOSS Visual How To 系列
- maskrcnn配置 模块‘keras.engine‘没有属性“Layer”
- 重置物体的position, rotation, scale,复制物体的组件