当前位置: 首页 > news >正文

2.2 mul、div、and、or乘除指令及所有寄存器英文名

汇编语言

在这里插入图片描述

1. mul乘指令

  • 两个相乘的数,要么都是8位,要么都是16位

两个8位数相乘

  • 一个默认放在al中,另一个放在8位reg或内存字节单元中
  • 8位乘法,结果默认放在ax中
  • 例如:计算100*10
    100和10小于255,可以做8位乘法
    mov al,64
    mov bl,a
    mul bl
    结果:ax = 1000(03e8h)

在这里插入图片描述

两个16位数相乘

  • 一个默认在ax中,另一个放在16位reg或内存字节单元中
  • 16位乘法,结果高位默认放在dx中,低位在放在ax中
  • 例如:计算100*10000
    100小于255,可10000大于255,所以必须做16位乘法
    mov ax,64
    mov bx,2710
    mul bx
    结果:ax = 4240h, dx = 000fh (f4240h = 1000000)

在这里插入图片描述

2.div除指令

  • 除数:有8位和16位两种,在一个reg或内存单元中

16位除以8位

  • 被除数:如果除数为8位,被除数则为16位,默认在ax中存放;
  • 除数为8位,则al存储除法操作的商,ah存储除法操作的余数
  • 计算10000 / 100
    mov ax,2710
    mov bx,64
    div bx
    结果 ax = 64h
    在这里插入图片描述
  • 计算10001 / 100
    mov ax,2711
    mov bl,64
    div bl
    结果 ax = 0164h ,ah = 01 , al = 64
    在这里插入图片描述

32位除以16位

  • 如果除数为16位,被除数则为32位,在dx和ax中存放,dx存放高16位,ax存放低16位

  • 除数为16位,则ax存储除法操作的商,dx存储除法操作的余数

  • 例如:1000000 / 10000
    mov dx,f
    mov ax,4240
    mov bx,2710
    div bx
    结果 ax = 64h
    在这里插入图片描述

  • 例如:1000001 / 10000
    mov dx,f
    mov ax,4241
    mov bx,2710
    div bx
    结果 ax = 64h
    在这里插入图片描述

3.and逻辑与指令

  • 逻辑与指令,按位进行与运算
  • 二进制里,同1则1,其余为0;在用debug时要把b转换为h
  • 例如指令:
    mov al , 01100011b
    and al , 00111011b
    执行后:al = 00100011b

在这里插入图片描述

mount c d:masm
c:
debug
a 073f:0100
mov al,63
and al,3btt

4.or逻辑或指令

  • 逻辑或指令,按位进行或运算
  • 二进制里,有1则1,其余为0;在用debug时要把b转换为h
  • 例如:
    mov al , 01100011b
    or al , 00111011b
    执行后:al = 01111011b

在这里插入图片描述

a 073f:0104
mov al,63
or al,3btt

相关文章:

  • Flutter 设置每帧绘制结束调用的回调函数
  • RK3568 android11 调试陀螺仪模块 MPU6500
  • flink 设置空闲等待推进水位线,避免子任务上游最小的水位线迟迟未达到触发时间
  • python的正则表达式
  • 《高性能MYSQL》-架构,锁,事务
  • H264的打包,nal,es,pes,pts,dts,ps,ts
  • 第十四届蓝桥杯大赛B组 JAVA 蜗牛 (递归剪枝)
  • 模版进阶C++
  • AI写的wordpress网站首页模板 你觉得怎么样?
  • [GXYCTF2019]BabyUpload1 -- 题目分析与详解
  • 探讨苹果 Vision Pro 的 AI 数字人形象问题
  • Linux相关小技巧《一》
  • LeetCode每日一题之 移动0
  • C++之结构体以及通讯录管理系统
  • 第四十七回 一丈青单捉王矮虎 宋公明二打祝家庄-强大而灵活的python装饰器
  • 深入了解以太坊
  • 【5+】跨webview多页面 触发事件(二)
  • 30天自制操作系统-2
  • 4个实用的微服务测试策略
  • C++类的相互关联
  • classpath对获取配置文件的影响
  • cookie和session
  • Java 多线程编程之:notify 和 wait 用法
  • java8-模拟hadoop
  • java概述
  • npx命令介绍
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • React中的“虫洞”——Context
  • Redis中的lru算法实现
  • 阿里云Kubernetes容器服务上体验Knative
  • 大快搜索数据爬虫技术实例安装教学篇
  • 记一次删除Git记录中的大文件的过程
  • 使用docker-compose进行多节点部署
  • 使用Swoole加速Laravel(正式环境中)
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 跳前端坑前,先看看这个!!
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 小程序开发中的那些坑
  • ​低代码平台的核心价值与优势
  • ​你们这样子,耽误我的工作进度怎么办?
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • # 安徽锐锋科技IDMS系统简介
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • $.ajax中的eval及dataType
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (23)Linux的软硬连接
  • (C语言)字符分类函数
  • (Matlab)使用竞争神经网络实现数据聚类
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (第27天)Oracle 数据泵转换分区表
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (汇总)os模块以及shutil模块对文件的操作
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (转)负载均衡,回话保持,cookie