我从偏移量510为 aa55 的硬盘上进行了转储。但是,据我所知,它在转储中为 55aa 。 / p>
000001fe: aa55
那么,我想知道数据是存储在磁盘的大端还是小端的?
谢谢
答案 0 :(得分:1)
它是0xaa55
作为16位小尾数字,因此,如果分别查看字节,则它是55
然后是aa
。磁盘的第一个扇区(512字节)是可引导的MBR引导扇区,可以在线性地址0x7c00
上加载并以实模式执行。
维基百科确认此布局:https://en.wikipedia.org/wiki/Master_boot_record#Sector_layout
最近有2个SO问题,这些问题有ASM中引导扇区的来源:
AT&T语法:How to handle keyboard in real mode through BIOS interrupts?
.org 510
.word 0xaa55
NASM:Assembly 32-bit print to display code runs on qemu, fails to work on real hardware
TIMES 510-($-$$) db 0
dw 0xaa55
这些是x86汇编程序,因此它们当然会将16位整数汇编到x86的little-endian。