Как подпись 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
TIMES 510-($-$$) db 0
dw 0xaa55
Это ассемблеры x86, поэтому они, разумеется, собирают 16-разрядные целые числа в младший порядок в x86.