将指针寄存器移至AL

问题描述 投票:0回答:1

我有一个指针寄存器,

edx
,它通过以下指令设置:

mov edx, stringvar
在哪里
stringvar
定义为
stringvar: db "teststring", 0xA, 0xD, 0

so

edx
包含 stringvar 中第一个字节的内存地址,“t”

但是当我去打印它时

mov ah, 0x0E
mov al, [edx]
int 0x10

它打印“☰”

这段代码实际上在做什么?

assembly nasm
1个回答
0
投票

原来是我设置不当

org

我从引导加载程序复制了代码

org 7C00
代替
org 7E00
,内核在内存中的起始位置

© www.soinside.com 2019 - 2024. All rights reserved.