ячейки памяти, то есть какое наложить оіраничение на объем памяти «сверху». Вопрос этот был далеко не праздным, поскольку от ответа на него зависела максимальная емкость оперативной памяти, с которой мог работать процессор. Например, если бы для размерности адреса отвели 4 бита, то можно было бы адресовать 16 ячеек (2 в 4-й степени) максимум. Поскольку был выбран адрес размерностью 16 бит, то всего, таким образом, можно было пронумеровать 65 536 ячеек, или (если поделить это число на 1024) 64 кбайт. Вот откуда взялась эта максимальная емкость оперативной памяти — 64 кбайт, с которой могли работать процессоры 8080 и Z80. С другой стороны, если бы емкость регистров для хранения адресов памяти была не 16, а, скажем 20 бит, то можно было бы адресовать 1 Мбайг памяти (2 в 20-й степени). Почему же разработчики ограничились 16 битами? Разумеется, в начале 1970-х годов казалось просто невероятным, что микропроцессорам понадобится память большей емкости, чем 64 кбайт (Intel 4004, напомню, мог работать не более чем с 1 кбайт памяти). Однако проблема максимального увеличения емкости памяти, необходимой программам, занимала тогда разработчиков не в первую очередь (если занимала вообще). Мало иметь адрес памяти в регистрах процессора, надо еще как-то переслать его микросхемам памяти. Поскольку время на обмен данными (в том числе и адресов) между процессором и памятью должно быть минимизировано, адреса и данные желательно пересылать по параллельным каналам (сегодня только память Rambus работает иначе). Поэтому размерность шины адреса в системе на базе 8080 или Z80 должна была равняться размерности адресных регистров. А увеличение разрядности внешней шины неизбежно влечет за собой общий рост стоимости системы. Именно поэтому разрабогчики ограничились 16-разрядной шиной адреса, рисунок 9.3.
RkJQdWJsaXNoZXIy MTExODQxMg==