Advertisement

8086汇编指令集[参考].pdf

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本PDF文档详细介绍了8086微处理器的汇编指令集,适合计算机科学爱好者和技术人员学习参考,帮助深入理解底层硬件操作原理。 8086汇编指令集.pdf

全部评论 (0)

还没有任何评论哟~
客服
客服
  • 8086[].pdf
    优质
    本PDF文档详细介绍了8086微处理器的汇编指令集,适合计算机科学爱好者和技术人员学习参考,帮助深入理解底层硬件操作原理。 8086汇编指令集.pdf
  • 8086快速手册
    优质
    《8086汇编指令快速参考手册》是一本全面介绍8086处理器汇编语言的工具书,提供详细的指令集、功能说明及应用示例,帮助程序员高效编程。 8086汇编指令速查手册涵盖了常用指令、算术运算指令、逻辑运算指令、串指令以及程序跳转指令等内容。 计算机寄存器分类简介:32位CPU包含的寄存器有4个数据寄存器(EAX、EBX、ECX和EDX)、两个变址和指针寄存器(ESI 和EDI)、两个指针寄存器(ESP 和 EBP)、六个段寄存器(ES、CS、SS、DS、FS 和 GS)以及一个指令指针寄存器(EIP) 与一个标志寄存器(EFlags)。
  • 8086系统下的CPU结构_.pdf
    优质
    本PDF深入探讨了8086处理器及其指令系统,详细解析了其内部结构和工作原理,并提供了丰富的汇编语言实例。适合计算机爱好者和技术人员学习参考。 本段落总结了关于CPU结构的三个知识点:运算单元和总线单元、8086指令系统以及Intel指令集汇编(x86汇编语言),但不涉及伪指令的内容。
  • 总+全面的.pdf
    优质
    本PDF文档提供了详细的汇编语言指令集,涵盖各类处理器架构的核心命令,旨在帮助程序员深入理解低级编程原理与技巧。 汇编指令大全及详细的汇编指令帮助你更快地掌握相关知识。
  • PowerPC
    优质
    PowerPC汇编指令集是为PowerPC架构设计的一套低级语言指令系统,用于直接控制计算机硬件操作,支持高效的运算和数据处理。 通过一个例子讲解了PowerPC的指令集,内容通俗易懂,适合初学者入门。
  • STM8
    优质
    《STM8汇编指令集》是一份全面介绍STM8微控制器汇编语言编程的手册,涵盖所有基本和高级指令,适用于嵌入式系统开发人员学习参考。 STM8是由STMicroelectronics公司开发的一种8位微控制器,以其高效能、低功耗以及丰富的内置功能而被广泛使用。编程STM8通常采用其汇编语言,通过一系列指令来操控硬件执行特定任务。 本段落将详细介绍STM8的汇编指令集,并帮助读者理解相关的基本概念和语法结构。这些指令涵盖了数据处理、转移操作、控制流程管理、算术运算、逻辑运算以及输入输出等多个方面,直接与CPU内核交互以实现程序功能。 1. 数据处理指令:这类指令用于执行寄存器或内存中的基本数学计算,包括加法(ADD)、减法(SUB)、乘法(MUL)和除法(DIV)。它们支持了几乎所有基础算术运算的需求,在编程中十分常见。 2. 转移指令:例如MOV、XCH、PUSH及POP等用于数据在寄存器之间或内存中的转移,以及堆栈操作。比如,使用MOV可以复制一个寄存器的值到另一个寄存器;而PUSH和POP则常用来保存与恢复函数调用时的状态。 3. 控制指令:包括JMP、CALL及RET等用于控制程序执行流程的关键命令。其中,JMP实现无条件跳转,CALL为子程序提供服务入口点,RET则返回到原先的调用位置。 4. 算术运算指令:例如ADD、SUB、INC和DEC等用来完成基本算术操作如加减以及增减1的操作;这些指令通常与累加器A及寄存器B结合使用。 5. 逻辑运算指令:包括AND、OR、XOR及NOT等执行位级的布尔逻辑运算,对于处理二进制数据尤其有用。 6. 比较和跳转指令:如CMP、JZ或JNE等允许程序根据比较结果做出分支决策。其中,CMP用于对比两个操作数;而JZ与JNE则依据是否为零来决定下一步的执行路径。 7. 输入输出(IO)指令:例如IN及OUT命令用来处理微控制器和外部设备之间的数据交换。通过IN读取外设寄存器的数据,使用OUT将信息写入这些寄存器。 为了编写高效的STM8汇编程序,掌握并熟练运用上述各类基本指令至关重要。阅读相关文档如《stm8指令集.pdf》能进一步提供详尽的解释、操作码格式和实例应用,从而有助于更深入地理解和优化STM8开发工作中的性能表现。 总之,理解与灵活使用STM8的汇编指令是编写高效嵌入式程序的基础条件之一。通过不断学习实践,你将能够更好地控制微控制器硬件并实现特定的应用需求。
  • DLX
    优质
    DLX汇编指令集是基于RISC架构设计的一种简化版处理器的指令系统,用于教育目的,包含多种数据处理和控制流指令。 DLX指令集是计算机科学领域中的一个重要组成部分,深入理解它可以极大地帮助我们掌握汇编语言的知识。本段落将详细介绍DLX指令集的各个方面,包括其构成、寄存器使用方法以及立即数表示方式等。 DLX指令集可以分为四类:负载存储(loadstore)指令、算术逻辑运算(arithmeticlogic)指令、控制流(control flow)指令和浮点(floating-point)运算指令。每一种类型的指令都有特定的功能及应用场景: 1. 负载存储(loadstore) 指令用于在寄存器与内存之间传输数据,常见的命令包括lw, sw, lh, sh, lb 和 sb等。 2. 算术逻辑(arithmeticlogic) 操作负责执行算数和布尔运算任务,如add、sub、mul、div、and、or 以及xor指令。 3. 控制流(control flow) 命令用于控制程序的运行路径,例如beq(相等跳转)、bne(不等于跳转), blt (小于则跳转), bgt(大于则跳转),j(无条件跳转) 等指令。 4. 浮点(floating-point) 指令执行浮点数相关的运算,包括add.s、sub.s、mul.s 和 div.s等。 DLX使用32个整型寄存器(R[rega]、R[regb]、R[regc])和另外的64位双精度浮点寄存器(D[drega]、D[dregb]、D[dregc]),以及用于单精度运算的32个浮点寄存器(F[frega]、F[fregb]、F[fregc]).每个寄存器都有特定的作用和用例。 立即数在DLX指令集中以16位, 26位或完整的32位来表示常量,常见的形式有imm16、uimm16 和 imm26等。 此外,DLX还使用各种符号来标识不同的操作类型,例如x_y 表示x的第y位; x_y..z 则代表从x的第y到z之间的所有位。 在DLX中, bits是从最低有效位置0编号至最高有效位31. 所有的数据传输都是以32比特进行除非另有说明。所有的整数操作都在一个32比特的数据域上执行,且只有当寄存器非零时才会将值赋给它;同时,寄存器0有一个固定的零值。 DLX指令集是一个强大而复杂的系统,深入研究它可以大大增强我们对计算机体系结构和编程方式的理解。
  • ARM详解——聚焦ARM
    优质
    本书专注于解析ARM汇编指令集的核心内容与应用技巧,旨在帮助读者深入理解并掌握ARM架构下的编程技术。 ### ARM汇编指令集概述 ARM(Advanced RISC Machines)是一种精简指令集计算机(RISC)架构,在移动设备、嵌入式系统及服务器等领域有着广泛应用。ARM汇编语言是直接与ARM处理器交互的一种低级编程语言,通过一系列特定的指令来控制硬件执行任务。本段落将根据提供的文档摘要对其中的一些关键指令进行详细介绍。 ### ARM7TDMI(-S)处理器介绍 文档中提到的ARM7TDMI(-S)是一款经典且广泛应用的ARM处理器内核。它支持Thumb和ARM两种指令集模式,并包含了一些重要的特性: - **T**:Thumb指令集,允许代码在更小的空间内运行。 - **D**:Debug调试功能,便于程序开发过程中的调试。 - **M**:Memory Management内存管理单元,提供内存保护和分页机制。 - **I**:ICE-In-Circuit Emulator接口。 - **S**:支持Jazelle DBX执行模式,提高了Java应用程序的性能。 ### ARM指令集详解 #### 1. 数据处理指令 数据处理指令用于进行算术运算和逻辑运算,在ARM指令集中应用广泛: - **LDRSTR**:加载存储指令,从内存读取数据到寄存器或将寄存器中的数据写入内存。 - **LDMSTM**:多寄存器加载存储指令,可以同时加载或存储多个寄存器的数据。 - **SWP**:交换指令,用于交换两个寄存器的值或者将一个寄存器与内存之间的值进行互换。 - **MOVMVN**:移动及取反后移动指令,用来把一个数值移入另一个寄存器或将该数取反后再将其移入另一寄存器内。 - **ADDSUB**:加法减法指令,执行相应的算术运算操作。 - **RSBADCSBCRSC**:带进位加、无符号乘、有符号乘以及反转子集的运算法则,分别用于不同的计算需求。 - **ANDORREOR**:逻辑与或异或指令,执行各种布尔逻辑运算。 - **BIC**:位清除指令,用来将寄存器中指定位置上的比特清零。 - **CMPCMNTSTTEQ**:比较、测试及等值判断的命令集,用于检测并对比寄存器中的数值大小和相等性。 - **MULMLAUMULLUMLALSMULLSMLAL**:乘法及其变种指令(带加法或减法),涵盖无符号与有符号的运算方式。 #### 2. 控制转移指令 控制转移指令用于改变程序执行流程: - **BBLBX**:分支、带链接分支及交换地址指针,用来跳转至指定内存位置继续执行。 - **CDPLDCSTCMCRMRC**:访问协处理器的功能集,涉及对这些辅助处理单元的读写操作。 - **SWIMRSMSR**:软件中断触发器以及状态寄存器的操作指令,允许程序在特定条件下请求系统干预或改变运行模式。 - **ADRADRLLDRNOP**:地址计算、长距离寻址及空操作命令集,用于执行复杂的内存访问和简单的流程控制。 #### 3. Thumb指令集 Thumb指令集是ARM架构的一个子集设计来减少代码大小同时保持较高的效率: - **区别于ARM指令的特点**: Thumb指令通常比ARM短但运行速度稍慢。在某些情况下可以混合使用这两种模式以优化程序性能。 - **数据处理和控制转移**:与标准的ARM类似,Thumb也包含加载存储、多寄存器操作及分支跳转等核心功能。 ### 总结 掌握并理解ARM汇编指令集是进行ARM架构编程的基础。通过对上述介绍的学习可以更好地利用这些工具来开发嵌入式系统或优化移动应用中的代码执行效率。
  • 常用的ARM.pdf
    优质
    本PDF文档深入浅出地介绍了常用的ARM指令集及其汇编语言编程技巧,适合初学者和中级开发者学习参考。 原作者:宛城布衣 目录 前言 i 目录 I ARM7TDMI(-S)指令集及汇编 1 ARM处理器寻址方式 2 寄存器寻址 2 立即寻址 2 寄存器偏移寻址 2 寄存器间接寻址 3 基址寻址 4 多寄存器寻址 4 堆栈寻址 5 块拷贝寻址 5 相对寻址 7 指令集介绍 7 ARM指令集 7 指令格式 7 第2个操作数 8 #immed_8r 9 Rm 10 Rm,shift 10 条件码 11 ARM存储器访问指令 13 LDR和STR 14 LDM和STM 16 SWP ARM数据处理指令 20 数据传送指令 20 MOV 20 MVN 20 算术逻辑运算指令 20 ADD 21 SUB 21 RSB 21 ADC 21 SBC 22 RSC 23 AND 23 ORR 24 EOR IV IIIIIIIIIIIIIII 比较指令 页常用ARM指令集及汇编 Ver:1010 比较指令 CMP CMN TST TEQ 乘法指令 MUL MLA UMULL UMLAL SMULL SMLAL 27 ARM跳转指令 B BL BX ARM协处理器指令 CDP LDC STC MCR MRC 31 ARM杂项指令 SWI MRS MSR 伪指令 34 ADR ADRL LDR NOP Thumb指令集 指令集与ARM指令集的区别 40 Thumb存储器访问指令 LDR和STR PUSH和POP LDMIA 和 STMIA 数据处理指令 数据传送指令 MOV MVN NEG 算术逻辑运算指令 ADD SUB ADC SBC MUL AND ORR EOR BIC ASR LSL LSR ROR 47 比较指令 CMP CMN TST TEQ 53 Thumb跳转指令 B BL BX Thumb杂项指令 SWI 伪指令 ADR ADRL LDR NOP 符号定义伪指令 GBLA、GBLL、GBLS LCLA、LCLL、LCLS SETA、SETL、SETS RLIST CN CP DN SN FN 数据定义伪指令 LTORG MAP FIELD SPACE DCB DCD和DCDU DCDO DCF D 和 DCFDU DCFS 和 DCFSU DCI DCQ和DCQU DCW和DCWU 报告伪指令 ASSERT INFO OPT TTL SUBT 汇编控制伪指令 IF、ELSE 和 ENDIF MACRO 和 MEND WHIL 和 WEND 杂项伪指令 ALIGN AREA CODE16 和 CODE32 END ENTRY EQU EXPORT和GLOBAL IMPORT和EXTERN GET和INCLUDE INCBIN KEEP NOFP REQUIRE PEQUIRE8 PRESERVE8 RN ROUT ARM伪指令 ADR ADRL LDR
  • DSP
    优质
    《DSP汇编指令集合》是一本专注于数字信号处理器(DSP)汇编语言编程的手册,详尽地介绍了各种DSP芯片特有的汇编指令及其高效使用方法。 DSP汇编指令集是数字信号处理器(Digital Signal Processor, DSP)编程的重要组成部分。以下是对DSP汇编指令集的详细知识点总结: 一、概述 DSP汇编指令集包含多种类型的指令,如算术逻辑单元(ALU)指令、乘加器(MAC)指令、移位器(SHIFTER)指令、数据传输(MOVE)指令以及程序流控制和杂项等其他类型。每种指令都有特定的功能。 二、ALU 指令 ALU 指令用于执行基本算术运算,包括加法、减法、乘法及除法。这些指令可以分为无条件和有条件两大类:前者直接进行计算操作;后者则根据状态寄存器中的值决定是否执行。 三、MAC 指令 MAC(Multiply-Accumulate)指令用于实现高效的乘加运算,广泛应用于信号处理与图像处理领域中。这类指令能够快速准确地完成包括但不限于乘法和累加在内的多项操作任务。 四、SHIFTER 指令 移位器指令主要用于执行各种形式的数据移动或旋转功能,在音频编码解码以及视频压缩等场合非常有用,涵盖左/右移及循环移位等多种类型的操作模式。 五、MOVE 指令 数据传输类的指令负责将信息在不同的存储区域之间进行交换。这包括从程序内存向寄存器中加载或保存变量值的过程,涵盖了赋值和互换操作等具体形式。 六、控制流指令 这类指令决定了代码执行路径的选择与改变,比如跳转到指定位置继续运行或者循环遍历一段特定范围内的命令序列,并支持基于条件判断的分支选择机制以实现更加灵活复杂的程序逻辑结构。 七、特殊用途指令 除了上述几类常见的功能之外,还有一些专门设计来满足某些独特需求的功能性指令。例如使能睡眠模式或执行复位操作等。 八、语法规范 DSP汇编语言具有明确规定的语法规则,定义了每条命令的格式以及其参数列表的形式与结构安排方式等内容。 九、状态寄存器 该硬件组件记录了处理器当前的工作状况,并且对某些特定条件下指令行为产生影响。它保存的信息能够帮助解释程序执行过程中产生的结果。 十、额外周期条件 在处理外部内存访问或等待操作完成等情况时,DSP汇编语言会引入“extra cycle”这种概念来描述需要插入额外的空闲状态以确保正确性的情况。