美文网首页
汇编简单知识点整理

汇编简单知识点整理

作者: DeepHacking | 来源:发表于2020-02-18 23:35 被阅读0次

1.汇编语言的AX,BX,CX,DX,分别表示什么 ?

 汇编语言中的AX、BX、CX、DX是CPU内部的通用寄存器中的数据寄存器助记符。 数据寄存器用来存放参与运算的数据或是存储运算的结果。这四个数据寄存器都是16位的,实际由两个8位寄存器组合而成,这是为了灵活处理8位数据。每个寄存器可以将高、低8位分别作为独立的8位寄存器使用。其中的高8位用AH、BH、CH、DH表示,低8位用AL、BL、CL、DL表示。 这四个数据寄存器除了作为通用寄存器使用外,还有各自的特殊功能: AX 寄存器称为累加器,常用于存放算术、逻辑运算中的操作数或结果。另外,所有的I/O指令都要使用累加器与外设接口传递数据。 BX 寄存器称为基址寄存器,常用来存放访问内存时的地址。 CX 寄存器称为计数寄存器,在循环、串操作指令中用作计数器。 DX 寄存器称为数据寄存器,在寄存器间接寻址中的I/O指令中存放I/O端口的地址。 此外,在做双字长乘除法运算时,DX 与AX合起来存放一个双字长数(32位),其中DX存放高16位,AX存放低16位。

2.汇编语言中 CS,DS,SS,ES 的区别? 

汇编语言中CS,DS,SS还有一个ES定义如下: CS(Code Segment):代码段寄存器; DS(Data Segment):数据段寄存器; SS(Stack Segment):堆栈段寄存器; ES(Extra Segment):附加段寄存器。 当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器 CS,DS,SS 来指向这些起始位置。通常是将DS固定,而根据需要修改CS。 而IP中保存的是所要执行的下一条指令的地址。

3.汇编语言MOV指令

在汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,用于将一个数据从源地址传送到目标地址(寄存器间的数据传送本质上也是一样的)。其特点是不破坏源地址单元的内容。 例如: MOV AX,2000H;将16位数据2000H传送到AX寄存器 MOV AL,20H;将8位数据20H传送到AL寄存器 MOV AX,BX;将BX寄存器的16位数据传送到AX寄存器 MOV AL,[2000H];将2000H单元的内容传送到AL寄存器 需要注意的是: (1)两个存储单元之间不能直接传送数据,即:MOV指令只允许一个操作数在存储器中。MOV [SI],[2000H];这是错误的 (2)MOV指令中立即数不能直接传送给段寄存器(CS、DS、SS、ES)和IP;段寄存器之间不能直接传送。MOV IP,2000 H ;这是错误的 (3)CS和IP不能作为目的操作数。MOV CS,AX ;这是错误的 (4)MOV指令中立即数不能作目标操作数。MOV 2000H,[SI] ;这是错误的。

相关文章

  • 汇编简单知识点整理

    1.汇编语言的AX,BX,CX,DX,分别表示什么 ? 汇编语言中的AX、BX、CX、DX是CPU内部的通用寄存器...

  • 从 简单汇编基础 到 Swift 不简单的 a + 1

    从 简单汇编基础 到 Swift 不简单的 a + 1从 简单汇编基础 到 Swift 不简单的 a + 1

  • 2.8 常用的汇编指令

    2.8 常用的汇编指令 本节必须掌握的知识点: 汇编指令 多动手实验,知道每个指令的功能 在此节之前汇编课程主要讲...

  • 【Note】Assembler

    简单回顾下汇编相应知识点 一.寄存器 通用寄存器:ax(累加) bx(基址) cx(计数) dx(数据)段寄存器:...

  • 简单汇编

    程序的本质 软件\程序的执行过程 寄存器和内存 编程语言的发展 汇编语言的种类 ios 最主要的汇编语言 AT&T...

  • hehe

    王爽汇编全书知识点大纲 第一章 基础知识 机器语言 汇编语言的产生 汇编语言的组成 存储器 cpu对存储器的读写 ...

  • 汇编(四)

    1. if语句的汇编代码 一个简单的if语句 main函数汇编 2. while语句的汇编代码 do while的...

  • 汇编简介

    学习汇编两大知识点:1.汇编指令2.寄存器 64bit:RAX \RBX\RCX\RDX :通用寄存器32bit:...

  • 简单汇编指令

    1, NOP(无操作) 运行这条指令不会对寄存器,内存以及堆栈造成任何影响,英文单词的意思是”无操作”,也就是说,...

  • arm 简单汇编

    1、寻址方式: mov r0, #1234 相当于:r0=#1234。#开头,表示16进制时,以0x开头,如#0x...

网友评论

      本文标题:汇编简单知识点整理

      本文链接:https://www.haomeiwen.com/subject/vvqbpttx.html