Comments (1)
这里的知识涉及到汇编,而汇编往往和硬件很有关系,比如X86或者ARM的指令是不一样的。这张图我们需要理解几个概念:
1.汇编中出现的数据有立即数($52、$0x11等)、寄存器里面的数据。【上图是用Ea来表示任意寄存器a,用引用 R[Ea]来表示它的值。】存储器里面的数据(可以理解很大的字节数组)。
2.比如最后1行的存储器 Imm(r,r,s),我们可以这样解读
Imm 是立即偏移数、Eb 是基址寄存器、Ei 是变址寄存器、s 是比例因子,必须是 1、2、4或8
那么在汇编中 我们可以看到2(%esp,%eax,4)这个操作数的意思是:地址为2+%esp+4*%eax的存储器区域的值。
所以你应该明白这张表的意思 表达的就是在底层最为重要的offset。也就是指针偏移,这张表对应的是X86的汇编格式,针对ARM是不一样的,具体可以查ARM的汇编指令。暂时了解这个概念就可以了,ARM指令我们暂时不做逆向,可以不要花太多精力。加油 @lanfairy
from computer-basics.
Related Issues (20)
- 第二章 2.3.6-2.3.7 整数乘法及除法 HOT 1
- 6.5章节中提及的概念:局部变量存储在寄存器中 HOT 2
- 动态链接的问题 HOT 1
- 3.7.3 数据传递(栈帧相关问题) HOT 2
- 牺牲页的问题 HOT 1
- 关联问题
- 关联问题 HOT 1
- 为什么64位的计算机可以运行32位计算机编译出来的程序 HOT 1
- signal处理会中断进程,为什么还需要使用异步安全的函数呢 HOT 1
- 第八章 异常控制流 8.5小节的程序问题 HOT 1
- 过程调用中使用的栈是线程独有还是线程共享? HOT 1
- 第九章mmap,文件映射,匿名映射的区别,及Android共享内存相关的问题 HOT 1
- 深入理解计算机系统第八章8.2.4关于用户模式和内核模式的问题(p510) HOT 1
- 在linux进程中的fd
- 关于进程回收的问题
- 静态库链接的问题
- 第12章,12.1.2,进程疑问
- 第六章书430页,高速缓存命中这块看不明白
- 节头表与段头表映射字段.shstrtab
- c程序堆与数据结构堆得区别
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from computer-basics.