Как подпись MBR хранится на жестком диске?

У меня есть дамп с жесткого диска, который имеет aa55 со смещением 510. Но места, где я читал об этом, говорят, что это 55aa в дампе.

000001fe: aa55

Итак, мне интересно, хранятся ли на моем диске данные с прямым или прямым порядком байтов?

Спасибо

1 ответ

Это 0xaa55 как порядковое 16-битное слово, так что это 55 затем aa если вы посмотрите на байты отдельно. Это указывает на то, что первый сектор (512 байт) диска является загрузочным загрузочным сектором MBR, который может быть загружен по линейному адресу. 0x7c00 и выполняется в реальном режиме.

Википедия подтверждает этот макет: https://en.wikipedia.org/wiki/Master_boot_record


Из двух последних SO вопросов, которые имеют источники для загрузочных секторов в ASM:

Синтаксис AT&T: как работать с клавиатурой в реальном режиме через прерывания BIOS?

.org 510
.word 0xaa55

NASM: сборка 32-битной печати для отображения кода выполняется на qemu, не работает на реальном оборудовании

TIMES 510-($-$$) db  0
dw 0xaa55

Это ассемблеры x86, поэтому они, разумеется, собирают 16-разрядные целые числа в младший порядок в x86.

Другие вопросы по тегам