• 汇编学习笔记7(记不清了,暂停。)8续


    第七讲开始学习汇编指令系统.

    指令是发送给CPU执行的命令。

     

    第7讲主要讲了下述几个指令:

    1.值传送指令:

    MOV:  传送数据。 MOV AX, 1024H。

    规则: MOV指令的两个操作数不能都是存储器

              MOV指令的目的操作数不能是立即数

              MOV指令的目的操作数不能是代码段

              MOV指令的操作数不能是IP寄存器

              MOV指令的操作数不能都是段

    2.地址传送指令:

    LED:   地址传递 MOV AX, BX,与 MOV AX, OFFSET BX 相同

    规则与上同。默认地址在数据段中

    3…..

    本节记不清了。。再说吧。

    第7讲开始讲述汇编语言的指令。

    汇编语言共有六个指令组。(概分)

    数据传送

    算术运算

    逻辑运算

    程序控制

    串操作

    处理器控制

    汇编语言指令的格式为:

    [标号:| 指令助记符 | 操作数1 | 操作数2 ] [:注释]

    1. MOV, 数据传送

    MOV DST, SRC     SRC可以是累加器,寄存器,存储单元和立即数。DST可以是累加器,寄存器和存储单元。

    源操作数和目的操作数不能同时都是存储单元。代码段不能作为目的操作数,IP既不能作为源操作数,也不能作为目的操作数。

    MOV的用途有三种:

    1) 处理器内部传送数据。 MOV reg1, reg2

         源操作数和目的操作数不能都是段寄存器。

    2) 立即数传送到寄存器或存储单元。  MOV reg1/mem, numeri

         立即数不能作为目的操作数。立即数不能直接存入段寄存器。

    3) 寄存器和存储单元之间进行数据传送。  MOV reg1/mem1, mem2/reg2

         源操作数和目的操作数必须类型相同。

    不能在存储单元之间直接进行数据传送。

    2. XCHG, 数据交换

    XCHG reg1/mem1, mem2/reg2   可以是通用寄存器和存储单元,必须至少有一个通用寄存器,不能是立即数。

    3. 地址传送指令 LEA, LDS, LES

    LEA reg1, mem1 传送有效地址指令。把mem1的有效地址送入16位通用寄存器中。

    LDS reg1, mem1  将mem1处的数据取32位,低16位送入通用寄存器中,高16位送入数据段中。

    LES reg1, mem1   将mem1处的数据取32位,低16位送入通用寄存器中,高16位送入附加段中。

    汇编指令系统复杂难记,特别是各种限制规则。在学习中慢慢记忆。

  • 相关阅读:
    解决docker 容器删除不掉的问题
    centos下安装docker
    Microsoft SQL Server 双机热备份,实时同步
    同一台主机下的两台虚拟机互ping不通
    JAVA基本数据类型
    记录一些比较高能的网站!
    Nginx+Lua+Redis配置
    用Squid3搭建缓存代理服务器
    Mysql导入CSV文件
    LeetCode--Remove Duplicates from Sorted Array
  • 原文地址:https://www.cnblogs.com/hailong/p/1894827.html
Copyright © 2020-2023  润新知