Показать сообщение отдельно
Старый 02.06.2004, 03:54     # 3
Slanj
::VIP::
 
Аватар для Slanj
 
Регистрация: 09.05.2004
Адрес: Киев
Сообщения: 670

Slanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj СэнсэйSlanj Сэнсэй
1.Ну, обьем адресуемой памяти процессора вроде как и связан с его разрядностью - если у процессора вегистры 16 бит, то и адресовать он сможет не больше 2^16=65536 байт. Для адресации используются
АДРЕСНЫЕ РЕГИСТРЫ

От размера этих регистров зависит размер памяти, к которой процессор может непосредственно адресоваться.

В процессорах первых поколений Intel 8088/8086 размер адресных регистров был 16 битов или 2 байта - максимальное число (номер байта в памяти), которое может быть записано в такой регистр, 2^16-1=65535 или, как его округленно называют - 64 килобайта

Но уже в компьютерах на базе этих процессоров возникла необходимость адресоваться к памяти размером 1024 килобайта (1 мегабайт). Чтобы выйти из затруднения с регистрами недостаточного размера, для адресации отвели 2 регистра и решили составлять адрес из 2-х частей : первая часть адреса содержит номер блока памяти как количество 16 байтовых ПАРАГРАФОВ, а вторая часть номер байта, отсчитанный от границы (начала) параграфа. Первую часть адреса назвали адресом СЕГМЕНТА, а вторую - СМЕЩЕНИЕМ внутри сегмента. Очевидно, что обе составляющие при 16-битовом регистре адреса не могут быть больше 65535

Максимальный адрес, по которому можно обратиться к памяти при такой 2-ступенчатой адресации FFFF0 или 65535 * 16 = 1048560.

Если все смещения будут максимальными - по 64 Кбайта -, то всего можно иметь до 16 сегментов. Процессоры следующих поколений имели уже более длинные регистры для хранения адресов - 80286 использует 24 битовые и позволяет адресовать напрямую до 16 мегабайт, а 80386 имеет 32-битовые регистры и может адресовать до 4 Гигабайт

2.Как уже говорилось в предыдущих темах, ассемблер заменяет аббревиатурами команды процессора.

Последний раз редактировалось Slanj; 02.06.2004 в 05:34.
Slanj вне форума