zoukankan      html  css  js  c++  java
  • 常用寄存器及其说明

    通用寄存器
    EAX 累加(Accumulator)寄存器 AX(AH、AL) 常用于乘、除法和函数返回值
    EBX 基址(Base)寄存器 BX(BH、BL) 常做内存数据的指针, 或者说常以它为基址来访问内存.
    ECX 计数器(Counter)寄存器 CX(CH、CL) 常做字符串和循环操作中的计数器
    EDX 数据(Data)寄存器 DX(DH、DL) 常用于乘、除法和 I/O 指针
    ESI 来源索引(Source Index)寄存器 SI 常做内存数据指针和源字符串指针
    EDI 目的索引(Destination Index)寄存器 DI 常做内存数据指针和目的字符串指针
    ESP 堆栈指针(Stack Point)寄存器 SP 只做堆栈的栈顶指针; 不能用于算术运算与数据传送
    EBP 基址指针(Base Point)寄存器 BP 只做堆栈指针, 可以访问堆栈内任意地址, 经常用于中转 ESP 中的数据, 也常以它为基址来访问堆栈; 不能用于算术运算与数据传送
    指令指针寄存器
    EIP 指令指针(Instruction Pointer)寄存器 总是指向下一条指令的地址; 所有已执行的指令都被它指向过(类比程序计数器PC
    标志寄存器
     EFLAGS

    标志(Flag)寄存器:
    EFLAGS 中的 32 位被分成 0-31 个二进制位分别使用;
    第 0、2、4、6、7、11 位是状态标志位;
    第 10 位是字符串操作控制标志位;
    其他标志位一般不用或无权使用

    0 CF 进位(Carry)标志 目标无法容纳无符号算术运算的结果, 需要进位或借位时被设置; 可用 STC 指令设置, CLC 指令取消.
    1
    2 PF 奇偶(Parity)标志 低 8 位中有偶数个 1 时被设置
    3
    4 AF 辅助(Auxiliary)标志 使用 BCD 码运算导致 3 位到 4 位产生进位时被设置
    5
    6 ZF 零(Zero)标志 运算结果为 0 时被设置
    7 SF 符号(Sign)标志 运算结果为负数时被设置
    8
    9
    10 DF 方向(Direction)标志 字符串操作是从高位到低位时被设置; 可用 STD 指令设置, CLD 指令取消.
    11 OF 溢出(Overflow)标志 因有符号运算的结果太宽而导致数据丢失时被设置
    ...

    31

  • 相关阅读:
    Autofac 学习简易教程随笔(一)
    实现Entity Framework SQLite Code First 开发
    Entity Framework SQLite 开发及实现简单的自定义Migration Engine
    MSSQLServer和SQL Server Express、LocalDB的区别
    .gitignore文件
    Entity Framework MSSQL Code First 开发
    页面为要加<!DOCTYPE html>
    数字图像处理(下)
    数字图像处理(上)
    列表
  • 原文地址:https://www.cnblogs.com/zlcxbb/p/6435335.html
Copyright © 2011-2022 走看看