Почему адрес 0xF000: 0xE05B в инструкции по прыжкам в длину, расположенной в 0xFFFF0 в BIOS? - PullRequest
0 голосов
/ 16 октября 2018

Мы знаем, что на x86, когда питание включено, регистр CS установлен на 0xF000, а IP - на 0xFFF0.И инструкция в 0xFFFF0 jmp far 0xF000:0xE05B.Вопрос в том, почему это 0xE05B, а не другие адреса?Если это для совместимости, как думает его дизайнер BIOS?Есть какая-то особая причина или просто выбрать случайный адрес?

1 Ответ

0 голосов
/ 30 августа 2019

Физический адрес 0xFFFF0 (0xF000: 0xFFF0) является частью адресного пространства BIOS.Адрес, по которому осуществляется переход, зависит от BIOS, поэтому не всегда может быть jmp far 0xF000:0xE05B.Указанный вами адрес типичен для некоторых виртуальных BIOS, но не обязательно должен быть конкретным адресом.

...