Почему 0x07c0 * 16 в AX ? не понятно ? в коде же не умножается в 16
Читаю хаб -> https://habr.com/ru/company/ruvds/blog/536132/ и все было по чуть-чуть понятно пока не дошел до этого...
movw $0x07c0, %ax
movw %ax , %ds
movw (0x0A) , %ax
Здесь происходит:
загрузка значения 0x07c0 * 16 в AX;
загрузка содержимого AX в DS;
установка 0x7c00 + 0x0a в AX;
Почему умножается 16 на начальный (0x07c0) адрес ?
Источник: Stack Overflow на русском