汇编基础知识总结
来源:互联网 发布:手机神奇软件 编辑:程序博客网 时间:2024/06/06 19:40
上学期自学过汇编后,也没有什么经常使用的需求,不到一学期,很多知识就忘却了,只是记个大概,为了以后能快速回忆以前学习的汇编知识,所以写这个来一点点积累平时学到的汇编基础知识点。
可以说有多少种不同内核的CPU,就有多少种汇编语言,当然,很多人学习汇编并不是真的要用汇编开发,而是更加了解自己的小伙伴(或者应付考试???),所以呢,出于这个目的,我总结的是针对于 16 位 CPU 的 masm 汇编。客观讲,虽然汇编与汇编之间有区别,但是他们都是万变不离其宗的,彼此相通,熟练掌握了一种汇编,就不怕搞不懂其他的了。
寄存器
寄存器按照功能的不同可分为
通用寄存器(AX,BX,CX,DX,SP,BP,SI,DI)、
段寄存器(CS,DS,ES,SS)、
指令指针寄存器(IP)、
标志寄存器(FLAGS)。
详细请参考: 汇编寄存器物理地址
PA=段地址x16+偏移量 有效地址
EA=段内偏移量 7 种寻址方式
- 立即寻址方式 Mov AL, 12H (12H 是一个立即数)
- 寄存器寻址方式
- Mov B, BX (源操作数是寄存器)
- Mov BX, B (目的操作数是寄存器)
- Mov AX, BX (两者都是寄存器)
- 直接寻址方式(中括号中是地址)
- Mov AX, [1234H] (默认是 DS)
- Mov AX, ES:[1234H] (指定使用 ES)
- 寄存器间接寻址方式 Mov AX, [DI] (DI 是地址)
注意:操作数的有效地址用SI、DI、BX和BP等四个寄存器之一来指定。若有效地址用SI、DI和BX来指定,则其缺省的段寄存器为DS;若有效地址用BP来指定,则其缺省的段寄存器为SS。 - 寄存器相对寻址方式 Mov AX,[SI + 123H] (寄存器 + 立即数)
- 基址加变址寻址方式 Mov AX, [AX + SI] (寄存器 + 寄存器)
- 相对基址加变址寻址方式 Mov AX, [BX + SI + 123H] (寄存器 + 寄存器 + 立即数)
16 位 CPU 内部有 20 根地址线,其编码区为:
[00000H,FFFFFH] ,可直接访问的物理空间为 1 M。持续更新中……
0 0
- 汇编基础知识总结
- 汇编学习之路之基础知识总结
- Java必学基础知识总结汇编
- 汇编知识复习总结——基础知识
- 汇编基础知识
- 汇编基础知识
- 汇编基础知识
- 汇编基础知识
- 汇编基础知识
- 汇编基础知识
- [汇编] 基础知识
- 汇编基础知识
- 汇编基础知识
- 汇编--基础知识
- 汇编基础知识一览
- 内联汇编基础知识
- 汇编"免杀"基础知识
- 破解基础知识汇编
- Java正则表达式的语法与示例
- Linux基础学习笔记之echo
- HTTP协议详解(真的很经典)
- 后台学习八---ajax运用
- linux系统之进程的创建与上下文切换
- 汇编基础知识总结
- 西北工业大学省赛选拔!!!
- OkHttp的用法和高效配置
- 配置文件加载异常java.lang.IllegalStateException: BeanFactory not initialized or already closed
- 文件服务器配置教程
- Android系统剪贴板(ClipboardManager)的使用: 通过代码复制和粘贴数据
- HttpServletResponse
- Flask开发服务器
- 树莓派 FFmpeg 支持GPU硬解码