Каковы сегмент и смещение при адресации памяти в реальном режиме?

Я читаю об адресации памяти. Я прочитал о смещении сегмента, а затем о смещении дескриптора. Я умею вычислять точные адреса в реальном режиме. Все это нормально, но я не могу понять, что такое смещение? Везде читал:

В реальном режиме регистры всего 16 бит, так что вы можете адресовать только до 64к. Чтобы разрешить адресацию большего количества памяти, адрес קד вычислено из сегмента * 16 + смещение.

Здесь я могу понять первую строку. У нас 16 бит, поэтому мы можем адресовать до 2 ^ 16 = 64k.

Но что это за вторая строка? Что представляет собой сегмент? Почему мы умножаем его на 16? почему мы добавляем смещение. Я просто не могу понять, что это за смещение? Кто-нибудь может объяснить мне или дать ссылку для этого, пожалуйста?

12
задан Saleh 1 July 2018 в 21:15
поделиться