Микропроцессор 8086 может адресовать до 1 МБ памяти (20-битная адресная шина). В большинстве книг показана диаграмма этой памяти объемом 1 МБ, которая, в свою очередь, показывает таблицы векторов прерываний, функции DOS, подпрограммы BIOS, занимающие место в памяти, и т. д.
МОЙ ВОПРОС:
Когда упоминается 1 МБ памяти, книги относятся к ПЗУ и ОЗУ компьютера. ПЗУ + ОЗУ = 1 Мб памяти сопрягаются? Если да, когда ввод-вывод с отображением памяти отображается как сегмент памяти в этом пространстве памяти объемом 1 МБ ..... означает ли это, что порты ввода-вывода занимают часть оперативной памяти?
Когда упоминается 1 МБ памяти, книги относятся к ПЗУ и ОЗУ компьютера. ПЗУ + ОЗУ = 1 Мб памяти сопрягаются?
Правильный. ЦП не различает ОЗУ и ПЗУ; адресное пространство размером 1 МБ совместно используется обоими.
Если да, когда ввод-вывод с отображением памяти отображается как сегмент памяти в этом пространстве памяти объемом 1 МБ ..... означает ли это, что порты ввода-вывода занимают часть оперативной памяти?
Вроде, как бы, что-то вроде. Порты ввода-вывода (используемые инструкциями IN
и OUT
) технически представляют собой отдельное адресное пространство на платформе x86 и не занимают адресное пространство памяти.
Однако к периферийным устройствам, отображаемым в память, обращаются так же, как к памяти, и они занимают адресное пространство памяти (которое они делят с ОЗУ и ПЗУ).
Сначала загрузите таблицу данных 8086 для справки.
Когда упоминается 1 МБ памяти, книги относятся к ПЗУ и ОЗУ компьютера.
Они относятся к адресуемому пространству микропроцессора. Посмотрите в таблицу данных, там показаны строки A19:A16 и AD15:AD0, которые используются для адресации внешнего пространства во время цикла T1. Процессору все равно, что находится во внешнем пространстве, он просто говорит, что хочет содержимое определенного адреса.
ПЗУ + ОЗУ = 1 Мб памяти сопрягаются?
У вас может быть ПЗУ, ОЗУ и все, что по шине данных отвечает ЦП, когда он запрашивает определенный адрес. ПЗУ и ОЗУ — это наиболее распространенные типы устройств, которые будут реагировать.
когда ввод-вывод с отображением памяти отображается как сегмент памяти в этом пространстве памяти объемом 1 МБ
Смотри сюда . ЦП использует один вывод для идентификации во внешнем мире типа команды, которую он использует для доступа (чтение [RD] или запись [WR]), его имя — M/IO. Если на этом выводе высокий уровень, процессор выполняет команду MOV, а содержимое ожидается из памяти . Когда на этом выводе низкий уровень, ЦП выполняет инструкцию IN/OUT, и содержимое ожидается от устройства ввода/вывода .
Однако ничто не запрещает предполагаемому устройству ввода/вывода реагировать, когда на этом выводе M/IO высокий уровень, и быть похожим на память .
В общем, эти типы - пространство памяти и пространство ввода-вывода были разработаны в старые добрые времена, когда оперативной памяти было мало, а логика была дорогой; наличие отдельной схемы ввода-вывода освободит адресное пространство памяти и будет меньше адресного пространства памяти (например, 16 бит или даже 8 бит вместо 20/16 бит). Это было удобно и понятно.
Однако некоторые разработчики устройств решили, что они хотели бы, чтобы их потенциальные устройства ввода/вывода реагировали на чтение и запись ячеек ОЗУ, а не на чтение/запись порта - причины могут заключаться в том, что ввод/вывод ОЗУ быстрее, занимает больше места. меньше байтов инструкций и т. д.
они означают, что порты ввода-вывода занимают часть оперативной памяти?
Да — устройство ввода-вывода с отображением памяти , отвечая на запрос чтения/записи в адресуемом пространстве памяти , занимает это пространство из полезного пространства ОЗУ. Например, в старых 8-битных компьютерах со слотами ОЗУ разработчики часто реализовывали ввод-вывод контроллера гибких дисков (который является вводом-выводом, а не устройством памяти) для адресации через специальные ячейки ОЗУ.
придурок