Обсуждение:Intel 8086 (KQvr';yuny&Intel 8086)

Перейти к навигации Перейти к поиску


Работа с памятью

[править код]

Что за два варианта в разделе "Работа с памятью"? Это стиль википедии одно и то же излагать в нескольких вариантах? Hroaldr (обс) 14:33, 26 июля 2016 (UTC)[ответить]

А теперь по содержанию:

Первый вариант

Для того чтобы адресовать больший, чем Intel 8080, объём памяти, потребовалось изменить способ адресации памяти. Ведь если использовать старые методы, когда адрес к ячейке памяти содержался в указательных регистрах, то пришлось бы увеличивать размер этих самых регистров, чтобы иметь возможность обращаться к большему объёму памяти.

Где логика? Зачем менять способ адресации, если увеличение адресного пространства вполне достигается "старыми методами", путём увеличения разрядности регистров, работающих с адресами?

Этот метод впоследствии (после появления защищённого режима) назвали реальным режимом адресации процессора, такой режим позволяет адресовать до 1 Мбайт памяти.

Сегментация, как метод адресации памяти, это лишь составная часть реального режима.

Второй вариант

Для того чтобы адресовать 1 мегабайт памяти (20 бит адреса) с использованием 16-битных регистров используется сегментирование. Старшие 4 бит адреса выводятся на отдельные контакты корпуса, а младшие 16 выводятся на совмещённую шину адреса-данных. Но граница сегмента не жёсткая, а плавающая.

Какая граница? Верхняя или нижняя? Куда, как и зачем она плавает?

В компьютере, подобном IBM PC, разработчики сэкономили 1 микросхему и решили не использовать разделение адресных пространств для памяти и для устройств ввода-вывода (т. н. верхняя память — англ. upper memory) использовались для видеопамяти и BIOS-а, это ограничивало память, доступную пользователю, объёмом в 640 Кбайт (т. н. обычная память — англ. conventional memory; страницы 0~9).

Каким образом "решили не использовать разделение адресных пространств для памяти и для устройств ввода-вывода"? Не припаяли контакт M/IO? Какой чип сэкономили? Как вообще понимать сию фразу? Как отказ от штатных средств работы с устройствами ввода-вывода? Может тогда подскажете по каким адресам памяти мапились порты для работы с принтером и прочей периферией (включая управление режимами дисплея)?

На то время такой режим адресации обеспечивал множество преимуществ: ёмкость памяти могла составлять до 1 Мбайт, хотя команды оперировали 16-битными адресами;

Та же басня. Пара 16-битных регистров [сегмент]:[смещение] теоретически в состоянии адресовать 2^32 байт, т.е. 4 Гбайт. Это никак не преимущество.

упрощалось использование отдельных областей памяти для программы, её данных и стека; упрощалась разработка устройств, совместимых друг с другом.

Чем упрощалось? Схема сегментирования как таковая проще чем прямая адресация по физическому адресу? Очень похоже на ответы слабого студента. "В чём преимущество X над Y? -- Он лучше!". И формально ведь верно.

Hroaldr (обс) 15:20, 26 июля 2016 (UTC)[ответить]

@Hroaldr: теперь лучше? -- Avivanov76 (обс) 13:57, 24 сентября 2016 (UTC)[ответить]

Микрокомпьютеры на основе Intel 8086

[править код]

Я убрал фразы

Для работы процессора Intel 8086 требовался полностью новый 16-разрядный набор микросхем поддержки

,

производителей 16-разрядных микросхем поддержки почти не было

и

дальнейшее развитие 16-разрядных систем со временем привело к выпуску большого ассортимента 16-разрядных микросхем поддержки от различных производителей

На мой взгляд это "из головы" написано.

Во-первых, набор микросхем поддержки для Intel 8086 не содержал 16-разрядных микросхем. Тактовый генератор и контроллеры шин вообще на разрядность ЦП не завязаны, а 8259A и 8237 это микросхемы с внешней 8-битной шиной. Все остальные микросхемы поддержки были одинаковы для 8085, 8086 и 8088.

Во-вторых, основным производителем микросхем поддержки была Intel, и не в её интересах было оставлять свой процессор без них - кто бы тогда смог его применить.

В третьих, не было большого ассортимента 16-разрядных микросхем поддержки. До середины 1980-х производители обходились 8-разрядными, а позже стало возможно интегрировать множество микросхем в единый чипсет. Но чипсет - это узкоспециализированная микросхема под конкретный компьютер, в отличие от шинных формирователей, мультиплексоров и т.п., которые универсальны и могут использоваться в любом компьютере. Фактически, стадия 16-разрядных микросхем поддержки была пропущена. И на то было минимум две причины: 1) на использовавшейся тогда ТТЛШ логике было трудно делать надёжно работающие микросхемы с такой разрядностью; 2) для микросхем требовались корпуса с большим числом выводов и это удорожало производство как микросхем, так и плат, на которые они должны были ставиться. И только в конце 1990-х появились микросхемы типа SN74ACT16373, которые можно назвать 16-разрядными микросхемами поддержки. Но на популярность Intel 8086 они уже никакого влияния не оказали. --Avivanov76 (обс) 17:22, 30 октября 2016 (UTC)[ответить]