通用寄存器

MOV指令

注意:目标操作数与操作数宽度必须一样

MOV 目标操作数,源操作数 
作用:拷贝源操作数到目标操作数
1、源操作数可以是立即数、通用寄存器、段寄存器、或者内存单元.
2、目标操作数可以是通用寄存器、段寄存器或者内存单元.
3、操作数的宽度必须一样.
4、源操作数和目标操作数不能同时为内存单元.

MOV EAX,AAAAAAAA
MOV AX,0BBBB
MOV AH,0CC
MOV AL,0DD

MOV EBX,BBBBBBBB
MOV EAX,EBX
MOV AX,CX
MOV AH,DL

MOV 的语法:

1、MOV r/m8,r8         r 通用寄存器

2、MOV r/m16,r16        m 代表内存

3、MOV r/m32,r32        imm 代表立即数

4、MOV r8,r/m8           r8 代表8位通用寄存器

5、MOV r16,r/m16        m8 代表8位内存

6、MOV r32,r/m32        imm8 代表8位立即数

7、MOV r8, imm8

8、MOV r16, imm16

9、MOV r32, imm32

ADD指令

ADD AL, imm8

ADD AX, imm16

ADD EAX, imm32

ADD r/m8, imm8

ADD r/m16,imm16

ADD r/m32,imm32

ADD r/m16, imm8

ADD r/m32, imm8

ADD r/m8, r8

ADD r/m16, r16

ADD r/m32, r32

ADD r8, r/m8

ADD r16, r/m16

ADD r32, r/m32

SUB指令

SUB AL, imm8

SUB AX, imm16

SUB EAX, imm32

SUB r/m8, imm8

SUB r/m16,imm16

SUB r/m32,imm32

SUB r/m16, imm8

SUB r/m32, imm8

SUB r/m8, r8

SUB r/m16, r16

SUB r/m32, r32

SUB r8, r/m8

SUB r16, r/m16

SUB r32, r/m32

AND指令:全是1为1

AND AL, imm8

AND AX, imm16

AND EAX, imm32

AND r/m8, imm8

AND r/m16,imm16

AND r/m32,imm32

AND r/m16, imm8

AND r/m32, imm8

AND r/m8, r8

AND r/m16, r16

AND r/m32, r32

AND r8, r/m8

AND r16, r/m16

AND r32, r/m32

OR指令:

OR AL, imm8

OR AX, imm16

OR EAX, imm32

OR r/m8, imm8

OR r/m16,imm16

OR r/m32,imm32

OR r/m16, imm8

OR r/m32, imm8

OR r/m8, r8

OR r/m16, r16

OR r/m32, r32

OR r8, r/m8

OR r16, r/m16

OR r32, r/m32

XOR指令:

XOR AL, imm8

XOR AX, imm16

XOR EAX, imm32

XOR r/m8, imm8

XOR r/m16,imm16

XOR r/m32,imm32

XOR r/m16, imm8

XOR r/m32, imm8

XOR r/m8, r8

XOR r/m16, r16

XOR r/m32, r32

XOR r8, r/m8

XOR r16, r/m16

XOR r32, r/m32

NOT指令:

NOT r/m8

NOT r/m16

NOT r/m32

通用寄存器_MOV_ADD_SUB_AND_OR_NOT的更多相关文章

  1. ARM学习笔记8——通用寄存器和存储器内容交换指令和软中断指令

    交换指令将一个存储单元内容与制定的寄存器内容相交换,交换指令为进程间同步提供了一种方便的解决途径.该指令产生一堆原子Load/Store操作,该操作发生在一个连续的总线操作中,在操作期间阻止其他任何指 ...

  2. CPU位数、地址线位数、数据线位数、通用寄存器位数!

    CPU位数:表示的是其通用寄存器的位数,CPU的位数表示该CPU一次处理数据的最大位数. 数据线位数:是CPU的理论最大寻址空间,也是CPU与内存之间一次最大的数据传输位数. 地址线位数:是CPU实际 ...

  3. 系统架构师考试——程序计数器 PC, 指令寄存器IR、状态寄存器SR、通用寄存器GR

    ● 计算机执行程序时,在一个指令周期的过程中,为了能够从内存中读指令操作码,首先是将__(9)___的内容送到地址总线上. (9)A.程序计数器PC    B.指令寄存器IR C.状态寄存器SR    ...

  4. 梦回----32位CPU和64位CPU的通用寄存器

    1 32位Intel的CPU通用寄存器 32位CPU所含有的寄存器有:4个数据寄存器(EAX.EBX.ECX和EDX):2个变址和指针寄存器(ESI和EDI):2个指针寄存器(ESP和EBP):6个段 ...

  5. 内核信号处理 & CPU8个通用寄存器

    内核信号处理参考: http://www.spongeliu.com/165.html 信号本质上是在软件层次上对中断机制的一种模拟(注意区分中断.异常.信号),其主要有以下几种来源: 程序错误:除零 ...

  6. x86-64数据格式、通用寄存器与操作数格式

    x86-64数据格式.通用寄存器与操作数格式 数据格式 ​ Intel用术语"字(word)"表示16位数据类型,32位为"双字(double words)", ...

  7. Intel 8086_通用寄存器|段寄存器

  8. 以stm32f407为例,学习cortex-m4通用寄存器的用法

    测试代码如下: int add(int a, int b, int c, int d, int e, int f) { return a+b+c+d+e+f; } int main(void) { i ...

  9. X86和X86_64和X64有什么区别?

    x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为&qu ...

随机推荐

  1. Class常量池、运行时常量池、字符串常量池的一些思考

    Class常量池.运行时常量池.字符串常量池 class常量池 java代码经过编译之后都成了xxx.class文件,这是java引以为傲的可移植性的基石.class文件中,在CAFEBABE.主次版 ...

  2. Typora快捷使用方式

    快捷使用: 1.一级标题 # + 空格 + 内容 2.六级标题 # + 空格 + 内容 3.有序序号 1. + 空格 + 内容 4.无序序号 -+ 空格.*+空格.++空格 5.代码块 ```pyth ...

  3. C++异常之五 异常和继承

    异常和继承 异常也是类,我们可以创建自己的异常类,在异常中可以使用(虚函数,派生,引用传递和数据成员等), 下面用一个自制的数组容器Vector,在对Vector初始化时来对Vector的元素个数进行 ...

  4. USB接口禁用小工具v1.0.1

    由论坛用户原创制作的一个USB接口工具, 可选择手动/自动启动或者禁止启动模式, 开启禁止启动模式后USB接口将关闭识别功能, 有效防止U盘设备侵入,对于机房实验室设施来说相当管用. 下载地址:htt ...

  5. Python+Selenium基本语法

    对Selenium自动化已有了解,最近开始做h5端的自动化,所以总结了下Python+Selenium自动化基本语法 一.启动浏览器 1.普通方式启动 #coding=utf-8 import tim ...

  6. typora软件使用指南

    Markdown学习 标题: 三级标题 四级标题 字体 hello,world! hello,world! hello,world! hello,world! 引用 选择狂神说java,走向人生巅峰 ...

  7. Linux安装Mycat1.6.7.4并实现Mysql数据库读写分离简单配置

    1. Mycat简介 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务.ACID.可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群 一 ...

  8. Java 一行代码 数组遍历输出

    Arrays.stream(arr).forEach(num -> System.out.println(num));

  9. Eureka系列(六) TimedSupervisorTask类解析

      为什么要单独讲解TimedSupervisorTask这个类呢?因为这个类在我们DiscoveryClient类的initScheduledTasks方法进行定时任务初始化时被使用得比较多,所以我 ...

  10. js 获取某月第一天和最后一天

    1.获取某月第一天和最后一天日期 function getDateByMonth (timeStamp) { let inDate = new Date(timeStamp) let year = i ...