Официальный сайт студ.городка НГТУ
Программирование и БД » вопрос про память 

#1  14.04.11 17:49

вопрос про память

Какое максимальное количество оперативной памяти доступно процессорам семейства Intel x86 при работе в реальном режиме?

вроде 1024 кб, но не понимаю почему....

Offline

#2  18.04.11 21:31

Re: вопрос про память

Потому что 1048576 = 2^20, по числу наличествующих линий на шине (http://en.wikipedia.org/wiki/A20_line). Эхо войнысовместимости.

Offline

#3  18.04.11 22:09

Re: вопрос про память

Aguero написал(а):

Какое максимальное количество оперативной памяти доступно процессорам семейства Intel x86 при работе в реальном режиме?

ты хоть пытался искать в инете? хоть корочку открывал самоучителя по ассемблеру? хотя чего я спрашиваю, со мной в комнате жил отличник АВТ, который даже не слышал о защищеном режиме.

по первой же ссылке в гугле

http://ru.wikipedia.org/wiki/%D0%A0%D0% … 0%B8%D0%BC

В реальном режиме при вычислении линейного адреса, по которому процессор собирается читать содержимое памяти или писать в неё, сегментная часть адреса умножается на 16 (или, что то же самое, сдвигается влево на 4 бита) и суммируется со смещением (если процессору передаётся не полный адрес из двух 16-битных значений — сегмента и смещения, — а только 16-битное смещение, то сегмент берётся из одного из сегментных регистров). Таким образом, адреса 0400h:0001h и 0000h:4001h ссылаются на один и тот же физический адрес, так как 400h×16+1 = 0×16+4001h.

Такой способ вычисления физического адреса позволяет адресовать 1 Мб + 64 Кб − 16 байт памяти (диапазон адресов 0000h…10FFEFh). Однако в процессорах 8086/8088 всего 20 адресных линий, поэтому реально доступен только 1 мегабайт (диапазон адресов 0000h…FFFFFh), а при адресации выше (в диапазоне 100000h…10FFEFh) происходит «заворот» — старший единичный бит адреса игнорируется и доступ идёт к 64 килобайтам в начальных адресах (0000h…FFEFh).

В процессорах 80286/80288 адресная шина 24-битная (возможна адресация 224 = 16 Мб памяти), поэтому в них переполнения не происходит. Компьютеры IBM PC/AT построены на процессоре Intel 80286, но из соображений совместимости с IBM PC и IBM PC/XT, построенных на Intel 808x, в них был введён логический элемент (вентиль), отключающий 21-й адресный провод (A20) от схемы управления памятью. Этот логический элемент (Gate A20) управляется через контроллер клавиатуры (микросхема Intel 8042) и по умолчанию он включён.

Исправлено Укроп (18.04.11 22:10)

Offline

Программирование и БД » вопрос про память 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.548 сек.
Выполнено 14 запросов.