汇编语言程序设计之数据传输类指令

news2024/12/25 12:49:47

文章目录

  • 数据传送类指令
    • 通用数据传送指令
      • MOV
      • XCHG
      • XLAT 换码指令
    • 堆栈操作指令
    • 标志传送指令
    • 标志位操作指令
    • 地址传送指令
  • 算术运算类指令
    • 常用标志位
    • 加法指令
      • ADD
      • ADC
      • INC
    • 减法指令
      • SUB
      • SBB
      • DEC
      • NEG
      • CMP
    • 乘法指令
      • MUL(无符号)
      • IMUL(有符号)
      • MUL和IMUL对符号的影响
    • 除法指令
      • DIV
      • IDIV
    • 符号拓展指令
    • 十进制调整指令
      • DAA (加法压缩)
      • DAS(减法压缩)
      • AAA(加法非压缩)和AAS (减法非压缩)
      • AAM(非压缩乘法) 和 AAD(非压缩除法)

数据传送类指令

通用数据传送指令

MOV

在这里插入图片描述

XCHG

在这里插入图片描述

XLAT 换码指令

在这里插入图片描述

  • 其中BX就是存储一个基础地址,然后加上AL存储的偏移量

堆栈操作指令

在这里插入图片描述

标志传送指令

在这里插入图片描述

标志位操作指令

在这里插入图片描述

地址传送指令

在这里插入图片描述

算术运算类指令

常用标志位

在这里插入图片描述

  • 对于无符号数来说,一般不讲溢出,而是使用进位
  • 这个CF只是说最高位有进位,那么这个最高位有可能是单字节或者双字节

加法指令

ADD

在这里插入图片描述

ADC

  • 与ADD的区别就是考虑了进位
    在这里插入图片描述

INC

在这里插入图片描述

减法指令

SUB

在这里插入图片描述

SBB

  • 同样,和sub的差别就是考虑了CF符号位
    在这里插入图片描述

DEC

在这里插入图片描述

NEG

  • 可以拿NEG来求负数的绝对值:因为当我们存储一个负数的时候,我们想求这个负数的绝对值,我们可以把这个负数的补码形式,全部按位取反,再加一即可
    在这里插入图片描述

CMP

  • 注意CMP指令只是去设置标志位,并没有改变目的操作数
    在这里插入图片描述

乘法指令

MUL(无符号)

  • 乘法要注意相对应的位数相乘,隐含操作数是AL和AX

在这里插入图片描述

IMUL(有符号)

在这里插入图片描述

MUL和IMUL对符号的影响

在这里插入图片描述

在这里插入图片描述

除法指令

DIV

  • 你会发现一个问题,其实除法的话和我们平时的计算存储结果的逻辑是一样的,也就是先写商再写余数,所以也就是商在低地址,余数在高地址
    在这里插入图片描述

IDIV

在这里插入图片描述

符号拓展指令

在这里插入图片描述

十进制调整指令

在这里插入图片描述

DAA (加法压缩)

  • 会利用判断AF,CF位

在这里插入图片描述

DAS(减法压缩)

在这里插入图片描述

AAA(加法非压缩)和AAS (减法非压缩)

在这里插入图片描述

AAM(非压缩乘法) 和 AAD(非压缩除法)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1819387.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Sa-Token鉴权与网关服务实现

纠错: 在上一部分里我完成了微服务框架的初步实现,但是先说一下之前有一个错误,就是依赖部分 上次的学习中我在总的父模块下引入了spring-boot-dependencies(版本控制)我以为在子模块下就不需要再引用了,…

传输层——TCP

在学习计算机网络的过程中,我们知道OSI七层协议模型,但是在实际开发应 用中我们发现OSI七层协议模型并不适合实施,因为OSI上三层通常都是由开 发人员统一完成的,这三层之间在实现过程中没有一个明确的界限,所以我 们更…

数据结构逻辑

一:逻辑关系 1、线性关系 2:树型关系 3:图像关系 二:存储关系 1:顺序存储、数据在存储中会开辟一块连续的空间进行存储。一般使用数组来存储数据 2:链式存储、数据在内存中不需要开辟连续的空间进行存储 3…

vba学习系列(5)--指定区域指定字符串计数

系列文章目录 文章目录 系列文章目录前言一、需求背景二、vba自定义函数1.引入库 总结 前言 一、需求背景 想知道所有客诉项目里面什么项目最多,出现过多少次。 二、vba自定义函数 1.引入库 引用: CountCharInRange(区域,“字符串”) Function CountCh…

Mysql数据类型解析

1、MySQL 数据类型 MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 1.2、查看Mysql编码格式 mysql> show variables like "%char%"; ----------------------------------------------…

【中颖】SH79F9202 呼吸灯(PWM)

源文件pwm.c #include "pwm.h"// 频率 占空比 极性 void Pwm1_Init(volatile U16 frequency, volatile U16 duty, volatile U16 polar) {// 周期,单位是msvolatile U16 period = 1000 / frequency; //32.25ms(T=1/F=1/0.032S=1000/32ms) // volatile U16 PWM1P …

vscode卡顿问题处理(vue-official插件)

vue官方扩展由volar升级为vue-official,部分人的ide会变得非常卡顿,这是由于vscode本身一些问题导致,如下图作者解释: 解决方式: 通过禁用Hybrid模式,不使用tsserver来接管语言支持,卡顿会缓解…

在线音乐播放器测试

在线音乐播放器测试报告 文章目录 1. 项目背景2. 项目简介2.1登录页面2.2 主页面2.3 收藏页面2.4 上传音乐页面2.5 注册页面 3. 需求评测4. 制定测试计划5. 设计测试用例5.1 注册5.2 登录5.3 主页面5.4 收藏页面5.5 添加歌曲 6. 执行测试用例6.1 注册6.2 登录6.2 主页面6.3 收藏…

凭什么现货白银这么受欢迎?现货白银是什么交易模式

近期现货白银投资颇为火热,很多朋友入场开户成为了正式的现货白银投资者。不过也有一些相对谨慎的投资者,他们想弄明白现货白银交易是什么,运行机制是怎么样的之后再入场,这也是合理的。而他们提出的一个问题就是,现货…

AI “黏土画风”轻松拿捏,手把手带你云端部署 ComfyUI

作者:鸥弋、筱姜 AI 绘画领域,Stable Diffusion WebUI、Midjourney 、DALL-E 都聚拢了一大批的应用开发者和艺术创作者。ComfyUI 出现时间略晚,但是它让创作者通过工作流的方式,实现自动化水平更高的 AI 生图流程,一面…

【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Qt窗口 | 标准对话框 | 文件对话框QFileDialog 文章编号:Q…

github ssh key的SHA256是什么

github ssh key的SHA256是什么 怎么知道github上自己的公钥指纹和本地的公钥是否一致? 计算方法如下: cat .ssh/id_rsa.pub |awk { print $2 } | # Only the actual key data without prefix or commentsbase64 -d | # decode as base64s…

SqlSugar有实体CURD应用-C#

本文所述开发环境:.C#、NET8、Visual Studio2022 SqlSugar有实体查询数据表 首先根据《SqlSugar使用DbFirst对象根据数据库表结构创建实体类-C#》中的描述的表结构创建所有表的实体类如下: 表名创建的实体类名tb_studentStudenttb_teacherTeachertb_c…

在Lua解释器中注册自定义函数库

本文目录 1、引言2、注册原理3、实例4、程序验证 文章对应视频教程: 暂无,可以关注我的B站账号等待更新。 点击图片或链接访问我的B站主页~~~ 1、引言 在现代软件开发中,Lua因其轻量级、高效和可嵌入性而被广泛使用。作为一种灵活的脚本语言…

(五)React受控表单、获取DOM

1. React受控表单 概念&#xff1a;使用React组件的状态&#xff08;useState&#xff09;控制表单的状态 准备一个React状态值 const [value, setValue] useState()通过value属性绑定状态&#xff0c;通过onChange属性绑定状态同步的函数 <input type"text"…

STL入门指南:从容器到算法的完美结合

目录 ​编辑 一、什么是STL 二、STL的版本 三、STL的六大组件 1. 容器&#xff08;Containers&#xff09;&#xff1a; 2. 算法&#xff08;Algorithms&#xff09;&#xff1a; 3. 迭代器&#xff08;Iterators&#xff09;&#xff1a; 4. 仿函数&#xff08;Functo…

群晖NAS安装配置Joplin Server用来存储同步Joplin笔记内容

一、Joplin Server简介 1.1、Joplin Server介绍 Joplin支持多种方式进行同步用户的笔记数据&#xff08;如&#xff1a;Joplin自己提供的收费的云服务Joplin Cloud&#xff0c;还有第三方的云盘如Dropbox、OneDrive&#xff0c;还有自建的云盘Nextcloud、或者通过WebDAV协议来…

我的高考往事

高考对于每一个参加过的人来说&#xff0c;都是一段非常难忘的回忆。 我参加高考&#xff0c;是在2001年。虽然迄今已经过去了23年&#xff0c;但很多细节仍然记忆犹新。 今天这篇文章&#xff0c;我就和大家分享一下&#xff0c;我的高考往事。 █ 青少年时代 我的老家是在江西…

波拉西亚战记加速器 台服波拉西亚战记免费加速器

波拉西亚战记是一款新上线的MMORPG游戏&#xff0c;游戏内我们有多个角色职业可以选择&#xff0c;可以体验不同的战斗流派玩法&#xff0c;开放式的地图设计&#xff0c;玩家可以自由的进行探索冒险&#xff0c;寻找各种物资。各种随机事件可以触发&#xff0c;让玩家的冒险过…

OZON芒果店长erp,OZON平台支持什么ERP

在跨境电商的浪潮中&#xff0c;OZON平台凭借其独特的优势&#xff0c;吸引了众多卖家入驻。然而&#xff0c;随着业务规模的不断扩大&#xff0c;如何高效管理商品、处理订单、优化仓储物流等成为了卖家们亟需解决的问题。此时&#xff0c;一款强大的ERP&#xff08;企业资源规…