首先 是寄存器的介绍

寄存器名     说明                            功能

eax:            累加器                 加法乘法指令的缺省寄存器, 函数返回值

ecx             计数器   REP & LOOP指令的内定计数器

edx             除法寄存器    存放整数除法产生的余数

ebx        基址寄存器       在内存寻址时存放基地址

esp      栈顶指针寄存器 SS:ESP当前堆栈的栈顶指针

ebp      栈底指针寄存器 SS:EBP当前堆栈的栈底指针

esi, edi    源、目标索引寄存器    在字符串操作指令中,DS:ESI指向源串 ES:EDI指向目标串

//以上为通用寄存器

eip       指令寄存器   CS:EIP指向下一条指令的地址 (也叫PC)

eflags    标志寄存器                   标志寄存器

cs              代码段寄存器      当前执行的代码段

ss 椎栈段寄存器      stack segment, 当前堆栈段

ds    数据段寄存器 data segment, 当前数据段

然后是 寻址方式

1 直接寻址方式

直接访问内存地址

2:寄存器间接寻址方式:

通过寄存器中存储的内存地址访问内存

3 寄存器相对寻址方式:

将寄存器中内存地址加上一个数值后作为地址访问内存

4:基址变址寻址方式:

把一个基址寄存器(EBX或EBP)的内容加上变址寄存器(ESI或EDI)的内容构成有效地址的寻址方式。若基址寄存器使用EBX,其默认段为数据段DS;若基址寄存器使用EBP,其默认段为堆栈段SS

5:相对基址变址寻址方式:

就是基址变址寻址方式得出的地址再加上一个数值然后进行寻址 譬如[EBX + EDI + 100]

一些基础 再加上指令的基础 就可以读懂基本的汇编语句 可以进行debug和写程序了

java寄存器_汇编学习 1 寄存器的作用 寻址方式 - DraculaW - JavaEye技术网站相关推荐

  1. java 域模型_基于Spring实现领域模型模式 - RUP实践者指南 - JavaEye技术网站

    事务脚本.领域模型及表模块是Martin Fowler在<企业应用架构模式>中总结的三种领域逻辑组织模式.各有各的优点和缺点,这里不打算讨论它们各自的适用场景,只简单总结一下在应用领域模 ...

  2. mysql 访问寄存器_汇编寄存器(内存访问)基础知识之三---mov指令

    1 内存中字的存储 一个字型数据占2个内存单元,内存里面一个内存单元一个字节(8位),高地址单位放高8位,低地址单元放低8位. 注意:0号是地址单元,1是高地址单元(上是低地址,下面是高地址) (1) ...

  3. vim 寄存器 操作_VIM学习笔记 寄存器 (Registers)

    将寄存器与各种删除.复制.粘贴命令组合使用,能够大大提高编辑文本的效率. 指定寄存器 在复制或删除文本时,可以使用"register命令将文本放入指定的寄存器中.例如以下命令,将复制的文本放 ...

  4. ARM汇编学习之寄存器 之PC

    PC指向当前指令的下两条指令的地址 假定当前正在执行的指令的地址是xxxx0,那么pc的值就是xxxx8,也就是后面第二条指令的地址,当前指令的地址+8 至于为什么要设计成这样,我也不懂.我觉得这个只 ...

  5. groovy 使用java类_深入学习java中的Groovy 和 Scala 类

    前言 Java 传承的是平台,而不是语言.有超过 200 种语言可以在 JVM 上运行,它们之中不可避免地会有一种语言最终将取代 Java 语言,成为编写 JVM 程序的最佳方式.本系列将探讨三种下一 ...

  6. java项目_值得学习和练手的Java企业级开源项目,强烈推荐!

    热门文章推荐:100本纸质书籍免费包邮!22款高颜值的终端工具,点燃了小姐姐对编程的热爱! 一条 SQL 引发的事故,同时小姐姐直接被开除!! 11月全国程序员平均工资新鲜出炉,内附封面图! 文末有彩 ...

  7. java序列化_深入学习Java序列化

    前言 对于Java的序列化,一直只知道只需要实现Serializbale这个接口就可以了,具体内部实现一直不是很了解,正好这次在重复造RPC的轮子的时候涉及到序列化问题,就抽时间看了下 Java序列化 ...

  8. java安装_在线学习Java编程的最佳方法

    java安装 1.简介 Java是使用最广泛的编程语言之一. 根据Github的最新报告,Java被列为仅次于JavaScript的第二大最常用的编程语言. 掌握Java的人有很多话题. 好消息是,您 ...

  9. 汇编自动出栈_汇编学习-入栈和出栈

    栈有两个基本的操作:入栈和出栈.入栈就是将一个新的元素放到栈顶,出栈就是从栈顶取出一个元素.栈顶的元素总是最后入栈,需要出栈时,又最先被从栈中取出.栈的这种操作规则被称为:LIFO(Last In F ...

最新文章

  1. Please make sure you have the correct access rights and the repository exists.问题解决
  2. NTFS 分区表修复新法(AcronisDiskDirector10)
  3. 用DataSet修改WebConfig
  4. 河南大学明德计划2020计算机学院,关于选拔2020级物理学“明德计划”实验班学生的通知...
  5. 【MM 模块】 Optimized Purchasing 优化采购 3
  6. 中国六个漂亮的古镇风景名胜区网站欣赏
  7. 极光推送maven与代码,无需修改,粘贴即用
  8. maven依赖包下载地址
  9. Java FileDescriptor sync()方法与示例
  10. 解决Failed to connect session for conifg 故障
  11. 生信分析过程中这些常见文件的格式以及查看方式你都知道吗?
  12. HTML学习二_HTML常用的行级标签,常用实体字符及表单标签
  13. python jieba库分词_Python基于jieba库进行简单分词及词云功能实现方法
  14. 在Linux中创建静态库和动态库范例 (hello.c)
  15. 关于Redis的概念
  16. Java-斗地主小游戏洗牌发牌(控制台程序)
  17. LCD屏幕调试 ~ 字模提取工具和图片转码工具
  18. 一文带你认清云服务器和轻量应用服务器的区别
  19. G31主板支持1440*900分辨率
  20. Android系统开机时间优化

热门文章

  1. Python3学习笔记01-环境安装和运行环境
  2. SpringCloud系列七:Hystrix 熔断机制(Hystrix基本配置、服务降级、HystrixDashboard服务监控、Turbine聚合监控)...
  3. [9.28模拟] good
  4. Android 解析包出错问题
  5. TCP/IP状态详解
  6. linux c++编写访问mysql程序,访问数据库出错,解决方法
  7. 第八章 路由协议原理
  8. ASP.NET MVC 右键点击添加没有区域(Area)、控制器、试图等选项
  9. 变革!建设行业大数据的崛起
  10. Shiro 教程,Shiro教程0.2 下载,Shiro功能修复与升级说明。