`

汇编语言学习 操作数指示符

 
阅读更多

以下为读书笔记,摘抄自《深入理解计算机系统》

 

汇编程序为程序员提供了更多处理器状态:

  • 程序计数器:将要执行的下一条指令在存储器中的地址 %eip
  • 整数寄存器堆:8个32位的寄存器
  • 条件码寄存器:记录控制流状态(if,while)等
  • 浮点寄存器堆: 8个32位寄存器
访问信息:

整数寄存器堆的八个寄存器:%eax, %ecx, %edx, %ebx, %esi, %edi, %esp 栈指针, %ebp 帧指针


 
操作数指示符:立即数、寄存器、存储器
  类型     格式                      操作数值                        名称                  
  立即数    $Imm             Imm = 直接的常数数值                     立即数寻址             
  寄存器    E_a              R[E_a] = 寄存器E_a的数据                 寄存器寻址             
  寄存器    Imm              M[Imm] = VSS[Imm] 虚拟地址Imm处的数据    绝对寻址               
  寄存器    (E_a)            M[R[E_a]] = VSS[R[E_a]]                  间接寻址               
  寄存器    Imm(E_b)         M[Imm+R[E_b]] = VSS[Imm+R[E_b]]          (基址+偏移量) 寻址     
  寄存器    (E_b,E_i)        M[R[E_b]+R[E_i]]                         变址                   
  寄存器    Imm(E_b,E_i)     M[Imm+R[E_b]+R[E_i]]                     寻址                   
  寄存器    (,E_i,s)         M[R[E_i]*s]                              伸缩化的变址寻址       
  寄存器    Imm(,E_i,s)      M[Imm+R[E_i]*s]                          伸缩化的变址寻址       
  寄存器    (E_b,E_i,s)      M[R[E_b]+R[E_i]*s]                       伸缩化的变址寻址       
  寄存器    Imm(E_b,E_i,s)   M[Imm+R[E_b]+R[E_i]*s]                

  伸缩化的变址寻址       

  • 大小: 45.4 KB
分享到:
评论

相关推荐

    汇编语言的基本语法,操作符

    注释],其中标号是指令的符号地址,操作码和操作数是用汇编语言指令表示的指令部分,注释是对该语句在本程序中的功能的说明。 指示性语句的格式为:[名字/变量] 命令 [参数] [;注释],其中命令指示汇编程序进行...

    汇编语言试题(附答案)

    - 每个指令通常由操作码和操作数两部分组成,操作码指示CPU执行何种操作,操作数则指明参与运算的数据或地址。 3. **寄存器**: - CPU内部的寄存器是存储数据和指令的地方,如AX、BX、CX、DX、SP、BP、SI、DI等...

    汇编语言_入门经典教材

    ### 汇编语言入门经典教材知识点解析 #### 一、汇编语言的由来及其特点 ...虽然汇编语言相对于高级语言来说学习门槛较高,但在某些特定领域,如嵌入式系统开发、操作系统内核编程等,汇编语言仍然具有不可替代的作用。

    机器语言和汇编语言学习资料

    于是,汇编语言应运而生,它是机器语言的一种抽象表示,用助记符代替了二进制代码。例如,"ADD"代表加法操作,"MOV"代表数据移动。尽管汇编语言比机器语言更容易理解,但它仍然与具体的硬件平台紧密相关,不同架构的...

    AT&T汇编语言与GCC内嵌汇编简介

    综上所述,AT&T汇编语言与INTEL汇编语言之间存在显著的语法差异,这些差异主要涉及大小写、操作数赋值方向、前缀、间接寻址语法、后缀等方面。同时,GCC内嵌汇编提供了一种高效且灵活的方式,使得高级语言程序员能够...

    2020第四章 8086汇编语言程序设计.pdf

    汇编语言使用助记符来代表机器指令的操作码,使用符号来代表机器指令的操作数,从而使程序更加易于编写和理解。本章节主要讨论8086汇编语言程序设计的基本概念、语句、伪指令、运算符以及汇编语言程序设计实例。 ...

    MCS-51汇编语言程序设计ppt

    2. **汇编语言**:汇编语言通过英文助记符表示机器指令,便于程序员编写和阅读。汇编语言程序需要经过编译程序转化为机器语言才能执行。它的特点是: - 面向硬件,程序员需了解MCS-51硬件结构。 - 助记符指令与...

    pc汇编语言中文学习文档

    ### pc汇编语言中文学习文档知识点总结 #### 一、基础知识概述 **1. 数制** - **十进制**: 我们日常生活中最常用的数制,基于10的基数,每一位可以是0到9之间的数字。 - **二进制**: 计算机内部使用的数制,基于2...

    汇编语言教材

    操作码指示要执行的操作,而操作数指定参与运算的数据及结果的存储位置。由于机器语言与特定的CPU架构紧密相连,不同类型的CPU具有不同的机器指令集,因此编写出来的程序在不同的CPU上可能无法运行。 汇编语言的...

    汇编语言实现的计算器

    - `Tip1`、`Tip2` 和 `Tip3` 分别是请求用户输入第一个操作数、操作符和第二个操作数的提示。 - `Result` 和 `Error` 用于显示结果或错误信息。 - `Quit` 提示用户是否继续或退出程序。 **3. 堆栈段定义** 堆栈段...

    汇编 汇编语言程序格式

    操作数和参数在汇编语言中也很关键。操作数是处理器指令的一部分,可以是立即数、寄存器或存储器地址。例如,`MOV CX,0`的两个操作数分别是CX寄存器和立即数0。伪指令的参数可能包括常量、变量名或表达式,如`...

    非常详细的汇编语言概念和汇编语言程序设计

    在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。特定的汇编语言和特定的机器语言指令集...

    简易汇编语言指令查询器

    用户仅需输入汇编指令的助记符或关键字,系统即可返回相关的指令信息,包括但不限于操作码、操作数、功能描述以及使用示例。例如,输入"MOV",系统能迅速定位到数据传输指令的详细说明,并提供相关的汇编代码样例。...

    汇编语言程序设计及上机指导 第5章 汇编语言语法.ppt

    在汇编语言中,还有多种数据类型,如字节、字、双字等,每种数据类型都有其特定的存储格式和操作方式。例如,DD数据类型是双字类型,占用4个字节的存储空间。 汇编语言程序设计还需要了解汇编语言的基本概念,例如...

    华南农业大学2014年汇编语言复习试卷答案

    - **指令**:一条指令通常由操作码和操作数组成,其中操作码表示要执行的操作类型,而操作数则指示操作的对象或数据。 - **伪指令**:这些不是真正的机器指令,而是由汇编器解释并用于控制汇编过程的指令,例如定义...

    汇编语言大作业报告

    2. **掌握子程序设计方法**:学习如何在汇编语言中定义和调用子程序,理解参数传递的方式,包括直接传递和通过堆栈传递。此外,还包括子程序的嵌套调用和递归调用。 3. **培养问题解决能力**:通过具体的编程任务,...

    汇编语言基础教学

    - **堆栈操作**:理解和掌握堆栈操作指令(如PUSH和POP)的执行过程及其对内存和寄存器的影响是学习汇编语言的重要部分。堆栈的正确管理和使用直接影响到程序的稳定性和性能。 #### 结论 汇编语言的学习不仅要求对...

Global site tag (gtag.js) - Google Analytics