zoukankan      html  css  js  c++  java
  • 汇编基础整理

    汇编基础
    第一章:基础
    1、地址总线
    2、数据总线
    3、控制总线
    4、内存地址空间,地址空间分配

    第二章:寄存器

    cpu由寄存器,控制器,运算器登器件构成

    a、通用寄存器 ax,bx,cx,dx
        高地位(H,L) AH,AL  ………………
            
      * 汇编指令:汇编指令或寄存器名称书写不区分大小写
      * 指令的两个操作对象的位数应当一致

      16位机构cpu
          * 运算器一次最多处理16位的数据
          * 寄存器的最大宽度为16位
          * 寄存器和运算器之间的通路为16位

       对于16位的CPU,能一次性处理,传输、暂时存储16位的地址
       段地址:分段管理内存    16位的8086CPU读写内存,拥有20位的地址总线如何达到1MB的寻址能力?    
          1、提供两个16位地址,一个称为段地址,,一个称为偏移地址
          2、地址加法器将两个16位地址合成一个20位的物理地址
          3、段地址 * 16 + 偏移地址

    b、段寄存器 cs、 ss、 es、ds
       cs:代码段寄存器; ip:指令指针寄存器
        
       jmp 段地址:偏移地址    -- 同时修改cs,ip的内容
       jmp 某一合法寄存器。    -- 使用寄存器的值修改ip,含义上类似, mov IP,ax;
        
        
       1、短地址在8086CPU的段寄存器中存放.8086CPU要访问内存是,有段寄存器提供内存单元的段地址。8086CPU有4个段寄存器,其中CS用来存放指令的段地址
       2、CS存放指令的段地址,IP存放指令的偏移地址

    windows下DEBUG命令
       -a 以汇编指令的形式在内存中写入机器指令 例如:-a 1000:0 1000:0000 mov ax,1
       -r 改变一个寄存器中的值。 例如: r ax  键盘点击ENTER
       -t 执行一条或者多条指令
       -e 改写内存中的内容 例如: -e 1000:0 b8 01 00 b9 00 02 01 c8
       -u 查看机器码对应的汇编指令
       -d 1000:0 查看内存中的内容。 -d 段地址:偏移地址
     


    第三章
    1、8086CPU内存地址由段地址和偏移地址构成,DS是段地址寄存器,同时注意
       a、不能用mov操作段寄存器  b、[……]表示一个内存单元,其中数字表示内存单元的偏移地址 c、ds 存放数据段的地址

          读取                   写入
       mov bx, 1000H           mov  bx, 1000H
       mov ds, bx              mov  ds, bx
       mov al, [0]             mov  [0],al

    2、栈的操作
      push ax 表示将寄存器ax中的数据送入栈中
      pop  ax 表示将栈顶取出的数据送入ax
     
      * 8086cpu的入栈和出栈都是以字为单位进行的
      * 8086cpu不保证我们对栈的操作是否超界。

      8086cpu中,有两个寄存器SS 和SP,栈顶的段地址存放在ss中,偏移地址存放在sp中,任意时刻,SS:SP指向栈顶元素。
     
      Push指令的执行步骤:1、SP=SP-2; 2、向SS:SP指向的字单元中送入数据
      pop指令的执行步骤: 1、SS:SP指向的单元读取数据; 2、SP=SP+2


    第四章 汇编程序编写






  • 相关阅读:
    (转) c++ 迭代器
    (转) 学习C++ -> 向量(vector)
    latex 模版
    javascript继承篇
    ES6的Map和Set的使用,以及weakMap的一点理解
    JavaScript中的eval函数
    Node.js中的进程与线程
    普通函数与箭头函数的区别是什么?
    git 远程拉去代码 输入用户名密码
    npm 设置镜像
  • 原文地址:https://www.cnblogs.com/yimuren/p/4363609.html
Copyright © 2011-2022 走看看