assembly - 装配 - 如果装载机改变部分在记忆中的位置怎么办
问题描述
1 section .data
2 00000000 00 sum: db 0
3 00000001 [10000000] tbl: dd L
4 section .text
5 global _start
6 _start:
7 00000000 31C0 xor eax, eax
8 00000002 B002 mov al,2
9 00000004 BB[00000000] mov ebx,sum
10 00000009 B200 mov dl,0
11 0000000B B9[01000000] mov ecx,tbl
12 align 16
13 00000010 01C0 L: add eax,eax
14 00000012 FEC2 inc dl
15 00000014 01C0 add eax,eax
16 00000016 0103 add [ebx],eax
17 00000018 FF21 jmp dword [ecx]
18 0000001A 0013 add byte [ebx],dl
19 next:
如果加载器将文本部分的内存中的位置更改为与编译器设置的第 9 行不同的位置,仍然正确吗?(和的地址sum
可以tbl
吗?)
解决方案
推荐阅读
- reactjs - 在 React-css 中,Bootstrap 影响另一个类组件
- docker - docker run dynamodb-local on Github Actions Workflow 挂起
- netbeans - 从 Ant 切换到 Maven 时 Netbeans 中的问题
- python - Pyspark - 如何根据两条线的差异创建新线
- java - 无法从android客户端连接到在windows上运行的python服务器
- python - 如何在我的 Pandas 数据框中合并绝对值?
- .net-core - 将 .Net Core 3.1 升级到 5 迁移无实体类型映射到表
- python - Python:.isAlpha 的时间复杂度
- vscode-settings - VSCode 和 Windows 终端预览
- server - 在现有维护时段内每天更新 API 服务器以进行回收需要什么