美文网首页
汇编语言

汇编语言

作者: 废柴阿七脏话 | 来源:发表于2017-06-28 17:28 被阅读0次

    寄存器的作用

    EAX:accumulator,加法乘法指令的缺省寄存器

    EBX:base address,内存寻址存放基地址

    ECX:counter,重复(REP)前缀指令和LOOP指令的内定计数器

    EDX:data,总是被用来放整数除法产生的余数

    ESI:source index,在很多字符串操作指令中, DS:ESI指向源串

    EDI:destination index,ES:EDI指向目标串

    EBP:base pointer,函数调用时??

    ESP:stack pointer,栈顶指针,堆栈从高地址向低地址增长

    EFLAGS:标志寄存器

    EIP:指令指针寄存器

    段寄存器:

    CS(code stack) 

    DS(data):通常用来存放要访问的数据的段地址

     SS(stack) ES FS GS:

    寻址方式

    立即数寻址:数据在指令代码中,用常量表示。mov al,12h

    寄存器寻址:数据在寄存器中,用寄存器名表示。mov al,12

    存储器寻址:数据在主存中,用存储器地址表示。基址寄存器+变址寄存器*比例+位移量

    IO寻址:数据在外设中,用IO地址表示

    子程序与堆栈

    调用函数

    call:将下条指令压入堆栈,转移到目标地址

    ret:将当前堆栈顶部弹出内容作为返回地址看,转移到返回地址

    参数传递:通用寄存器,共享变量,堆栈

    将数据放入地址1000H的内存

    mov bx,1000H

    mov ds,bx

    mov [0],al         ;[0]表示一个内存单元,0表示内存单元的偏移地址;指令执行时,自动取ds中的数据为内存单元的段地址

    相关文章

      网友评论

          本文标题:汇编语言

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