关于汇编的基础学习总结

关于汇编 很多人觉得有点晦涩难懂,但静下心,慢慢的摸索,也能很快的掌握

先说8086的汇编,因为最简单嘛(原谅我的无耻^_^)

这里只写自己的理解:

1、要明白 地址总线, 数据总线,控制总线

地址总线:很好理解,就是用来传递地址的,寻址。8086就有20根线,所以它的寻址能力是1M,也就是2^20。

 数据总线:用来传递数据 有16根,也就是 64k

控制总线:告诉cup 数据是 用来写的  还是用来读取的

2、关于寄存器:

DS:数据寄存器,用来存储数据

CS:代码段寄存器,用来存储代码,一般寻址 都是 段地址 + ip地址,如1234H + 05H,变成真正的地址,就成了 12340H + 05H = 12345H ,也就是 段地址 *16 + 偏移地址

栈SS:存放数据的一块区域 一般来说 大小是 64k,之所以是64k,是由于偏移地址造成的,偏移地址sp,FFFFH最大,如果是push 则 指针从高位到低位移动,每次2个字节,而且,异动前,sp指针指向前一个地址。规则是先进后出。

3、AX:AX地址分为 ah 和 al  主要是用来兼容之前的版本,分出了 高8wei,低8位,

BX:同ax一样

一般我们在定义段地址的时候,不能直接给 段地址进行赋值的 如:mov cs :2233H ❌,

应该是 mov ax ,2233H

            mov cs, ax

如果是数据段寄存器,进行取值,则:

           mov ax ,2233H

            mov ds, ax

           mov ax,[0]

这样会取出2个字节,分配到ax中,取多少字节,是根据寄存器的大小决定的。

4、loop用法

其用法同do while的用法是一样的,如:需求 是 2^6

mov ax ,2

mov cs,5H   //需要执行循环的次数,而且不要开始就会0,因为每执行一次 ,次数就会减一,0H之后就会变成FFFH,就会点成最大数。

s: add ax ,ax   //s  相当于名称

loop s

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,686评论 8 114
  • 汇编总结 汇编的发展史 机械语言 由0和1组成的机器指令(如:0101 0001 1101 0110) 汇编语言(...
    iChuck阅读 5,104评论 1 8
  • 王爽汇编全书知识点大纲 第一章 基础知识 机器语言 汇编语言的产生 汇编语言的组成 存储器 cpu对存储器的读写 ...
    2c3ba901516f阅读 7,194评论 0 1
  • 越底层越单纯!真正的程序员都需要了解的一门非常重要的语言,汇编! 机器语言 我们所写的语言最终安装在机器上的是什么...
    瑞阳gg阅读 3,816评论 0 0
  • 一、基础知识 mov ax,bx把BX内容送到AX中。汇编语言有3类指令,汇编指令、伪指令,其他符号。CPU通过地...
    赤果_b4a7阅读 5,883评论 0 1