我有一个硬盘的转储,它在偏移量 510 处具有aa55。但是我读过它的地方说它在转储中是55aa 。
000001fe: aa55
所以,我想知道数据是存储在我的磁盘上的大端还是小端?
谢谢
我有一个硬盘的转储,它在偏移量 510 处具有aa55。但是我读过它的地方说它在转储中是55aa 。
000001fe: aa55
所以,我想知道数据是存储在我的磁盘上的大端还是小端?
谢谢
它0xaa55
是一个 little-endian 的 16 位字,所以如果你单独查看字节的55
话。aa
IEdb 0x55, 0xaa
这表明磁盘的第一个扇区(512 字节)是可引导的 MBR 引导扇区,可以在线性地址加载0x7c00
并在实模式下执行。
维基百科确认了这种布局:https ://en.wikipedia.org/wiki/Master_boot_record#Sector_layout
来自 2 个最近的 SO 问题,这些问题具有 ASM 中引导扇区的来源:
AT&T 语法:如何通过 BIOS 中断在实模式下处理键盘?
.org 510
.word 0xaa55
NASM:汇编 32 位打印以显示代码在 qemu 上运行,无法在真实硬件上运行
TIMES 510-($-$$) db 0
dw 0xaa55
这些是 x86 汇编器,因此它们当然会将 16 位整数汇编为 x86 的小端序。