【汇编】算术指令

news2025/3/1 15:59:02

一、加法指令

(一)各加法指令的格式及操作

加法指令可做字或字节运算

(1)加法指令 ADD

  • 格式ADD DST,SRC
  • 执行的操作(DST) ← (SRC)+(DST)

(2)带进位加法指令 ADC

  • 格式ADC DST,SRC
  • 执行的操作(DST) ← (SRC)+(DST)+CF

(3)加1指令 INC

  • 格式INC OPR
  • 执行的操作(OPR) ← (OPR)+1

(二)加法指令对条件标志位的影响

INC指令不影响 CF标志外,均影响条件标志

在这里插入图片描述

二、减法指令

(一)各减法指令的格式及操作

减法指令可做字或字节运算

(1)减法指令 SUB

  • 格式SUB DST,SRC
  • 执行的操作(DST) ← (DST)-(SRC)

(2)带借位减法指令 SBB

  • 格式SBB DST,SRC
  • 执行的操作(DST) ← (DST)-(SRC)-CF

(3)减1指令 DEC

  • 格式DEC OPR
  • 执行的操作(OPR) ← (OPR)-1

(二)减法指令对条件标志位的影响

DEC指令不影响 CF标志外,均影响条件标志

在这里插入图片描述

(三)其他减法指令 NEG & CMP

(1)求补指令 NEG

  • 格式NEG OPR
  • 执行的操作(OPR) ← -(OPR)

(2)比较指令 CMP

  • 格式CMP OPR1,OPR2
  • 执行的操作(OPR1)-(OPR2)

注意:比较指令 CMP不保存结果,只设置标志位

三、乘法指令

(一)各乘法指令的格式

(1)无符号乘法指令 MUL

  • 格式MUL SRC

(2)带符号乘法指令 IMUL

  • 格式IMUL SRC

(二)乘法指令执行的操作

  • 字节操作数:(AX) ← (AL)*(SRC)
  • 字操作数:(DX,AX) ← (AX)*(SRC)
  • 双字操作:(EDX, EAX) ← (EAX)*(SRC)

注意

  1. 总是与 AL 或 AX 相乘
  2. 与 AL 相乘时,结果位于 AX ➡️(AL(AX)为隐含的乘积寄存器
  3. 与 AX 相乘时,结果位于 DX、AX ➡️(AX(DX,AX)为隐含的乘积寄存器
  4. SRC不能为立即数

(三)乘法指令对条件标志位的影响

影响标志:除CF和OF外,对条件标志位无定义

在这里插入图片描述

四、除法指令

(一)各除法指令的格式

(1)无符号除法指令 DIV

  • 格式DIV SRC

(2)带符号除法指令 IDIV

  • 格式IDIV SRC

(二)乘法指令执行的操作

  • 字节操作数

    (AL) ← (AX)/(SRC)的商
    (AH) ← (AX)/(SRC)的余数

  • 字操作数

    (AX) ← (DX,AX)/(SRC)的商
    (DX) ← (DX,AX)/(SRC)的余数

注意

  1. 被除数总是 AX 或 DX、AX
  2. AL(AX)为隐含的商寄存器,AH(DX)为隐含的余数寄存器
  3. 被除数的位数是除数位数的一倍,需要使用扩展指令
  4. SRC不能为立即数
  5. 对所有条件标志位无定义

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

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

相关文章

【C语言】自定义类型之---结构体超详解(结构体的定义使用、指针结构体,内存对齐,......代码详解)

目录 前言: 一:结构体 1.1:什么是结构体? 1.2:结构体类型的声明 1.3:结构体变量的定义 1.4:结构体的内存对齐 1.5:结构体传参 二:位段 2.1:位段是什…

反爬-简单滑块思路,秒了~

文章目录 找图片的返回包curl 大法获取图片链接ddddocr分析距离看结果秒了~ 本文仅供参考学习,如有侵权,请联系作者删。 目标地址:aHR0cHM6Ly9pZHMuZ2RpdC5lZHUuY24vYXV0aHNlcnZlci9sb2dpbj9zZXJ2aWNlPWh0dHBzOi8vd2JkdC5nZGl0LmVkdS5jbi9zaG…

2024 Google I/O Android 相关内容汇总

2024 Google I/O Android 相关内容汇总 本次 Google I/O 的核心虽然是 AI ,但是 Android 也是作为主要议题出现, Android 部分可以简单分为产品和开发相关内容,接下来主要介绍这两部分的相关更新。 重点开始开发相关,内容不少 产…

2010-2024年各地级市社会信用体系建设匹配DID数据

2010-2024年各地级市社会信用体系建设匹配DID数据 1、时间:2010-2024年 2、指标:行政区划代码、年份、所属省份、地区、社会信用体系建设示范区 3、范围:310个地级市 4、来源:国家发改委 5、指标解释: 社会信用体…

webpack优化构建速度示例-babel-loader开启缓存cacheDirectory:

babel-loader 默认并没有开启缓存。尽管babel-loader有自己的缓存机制,但它并不与webpack的缓存机制相冲突。相反,它们可以协同工作,以提供最佳的构建性能。 src/index.js import {otherSomeFuction} from ./module; console.log(otherSomeF…

LeetCode322:零钱兑换

题目描述 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无…

Kotlin核心编程知识点-02-面向对象

文章目录 1.类和构造方法1.1.Kotlin 中的类及接口1.1.1.Kotlin 中的类1.1.2.可带有属性和默认方法的接口 1.2.更简洁地构造类的对象1.2.1.构造方法默认参数1.2.2.init 语句块1.2.3.延迟初始化:by lazy 和 lateinit 1.3.主从构造方法 2.不同的访问控制原则2.1.限制修…

24长三角A题思路+分析选题

需要资料的宝子们可以进企鹅获取 A题 问题1:西湖游船上掉落华为 mate 60 pro 手机 1. 手机掉落范围分析 物品特征:华为 mate 60 pro 手机的尺寸、重量、形状等特性。静水假设:西湖水面平静,不考虑水流影响。掉落位置&#xff…

多态:解锁面向对象编程的无限可能

1. 概述 多态(Polymorphism)是面向对象编程的三大核心特性之一(另两个是封装和继承)。多态意味着不同的对象对同一消息做出不同的响应。简单来说,多态允许你使用父类引用指向子类对象,并且当调用方法时&am…

Jmeter使用While控制器

1.前言 对于性能测试场景中,需要用”执行某个事物,直到一个条件停止“的概念时,While控制器控制器无疑是首选,但是在编写脚本时,经常会出现推出循环异常,获取参数异常等问题,下面总结两种常用的…

如何看待Agent的爆火

在2023年3月,一个名为AutoGPT的框架项目引发了一场AI Agent热潮。这个项目利用大型语言模型,将大任务拆分成小任务,并使用工具完成它们。这种技术将大语言模型处理语言、创造内容和逻辑推理的能力扩展到了应用场景中,还加入了感知…

代码随想录——填充每个节点的下一个右侧节点指针 II(Leetcode117)

题目链接 层序遍历 /* // Definition for a Node. class Node {public int val;public Node left;public Node right;public Node next;public Node() {}public Node(int _val) {val _val;}public Node(int _val, Node _left, Node _right, Node _next) {val _val;left _l…

Android setMaxLifecycle和BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT浅析

前言 最近公司动荡,我在的项目受大环境影响收益每年下滑,可能要领盒饭了,所以最近都在复习相关基础内容,毕竟小脑袋瓜会忘记以前学过的东西。 在ViewPager和Fragment的懒加载中,具体的原理是怎么样的呢?为…

多联机常见各部件功能及常见机组制冷原理图

一、各部件名称和主要功能 1、压缩机 压缩机根据实际系统需要,调整其转速达到节能目的。 2、压缩机油温加热带 在待机状态下,保证压缩的油温确再启动可靠性。 3、压缩机 排气 感温包 检测压缩机的排气温度,达到控制和保护目的。 4、高压开…

告别手动截图!手把手教您在教程制作中,如何自动生成Windows操作步骤

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 操作演示 📒📝 记录器📝 操作步骤⚓️ 相关链接 ⚓️📖 介绍 📖 🚀 探索Windows的隐藏宝藏 —— 步骤记录器:你的操作,它来记录! 你是否曾经希望有一个助手,能够自动记录下你在电脑上的每一个操作步骤?无论是为…

电机控制系列模块解析(20)—— MTPA

一、MTPA MTPA 是 "Maximum Torque Per Ampere" 的缩写,意为“最大转矩电流比”。在电机控制系统中,特别是永磁同步电机(PMSM)或其它永磁电机的控制策略中,MTPA 控制旨在实现电机在给定负载条件下&#xff…

24年湖南三支一扶报名流程图及报名照片要求

24湖南三支一扶报名流程图,照片要求☑️ ✔️报名时间:5月15日9:00至5月23日17:00 ✔️报名方式 报考人员登录市州人力资源社会保障局官网、市州人事考试网等查看各地公告,按要求报名。 ✔️报名流程(湖南各地市单独报名&…

15.SVG变形 Transform

SVG的transform属性非常强大,它允许你对图形进行平移、缩放、旋转、倾斜等操作。以下是一篇关于SVG图形变形的教程,包括详细的描述和代码示例。 平移(Translate) 平移操作可以将图形从一个位置移动到另一个位置。使用translate(x, y),其中x和…

【Linux网络编程】传输层中的TCP和UDP(UDP篇)

【Linux网络编程】传输层中的TCP和UDP(UDP篇) 目录 【Linux网络编程】传输层中的TCP和UDP(UDP篇)传输层再谈端口端口号范围划分认识知名端口号netstatiostatpidofxargs UDP协议UDP协议端格式UDP的特点面向数据报UDP的缓冲数据UDP使…

软考笔记随记

原码:(0正1负) 原码是最直观的编码方式,符号位用0表示正数,用1表示负数,其余位表示数值的大小。 例如,+7的原码为00000111,-7的原码为10000111。 原码虽然直观,但直接用于加减运算会导致计算复杂,且0有两种表示(+0和-0),不唯一。 反码: 反码是在原码的基础上得…