Регистр адреса ячейки памяти обеспечивает доступ к определенным ячейкам памяти с помощью дешифратора адреса ячейки памяти. Размер регистра адреса ячейки памяти определяется максимальной емкостью памяти компьютера. Например, 16-разрядный регистр адреса ячейки памяти позволяет адресовать 2 16или 65 536 ячеек памяти.
Слово, которое необходимо сохранить в памяти, помещается сначала в регистр данных, а после этого в нужную ячейку памяти. Для того, чтобы прочесть данные из памяти, определяется адрес ячейки памяти, и данные из ячейки памяти загружаются в сдвиговый регистр.
Блоки ввода и вывода компьютера позволяют принимать и передавать информацию, то есть обмениваться информацией с окружающим компьютер миром. Оператор или периферийное оборудование вводят данные в компьютер через блок ввода. Данные из компьютера поступают на внешнее периферийное оборудование через блок вывода.
Блоки ввода и вывода управляются центральным процессором. Для передачи данных в компьютер и из компьютера используются специальные команды ввода/вывода (I/O).
Большинство компьютеров могут выполнять команды ввода/вывода по запросу прерываний. Прерывание — это сигнал от внешнего устройства, запрашивающий вид обслуживания: передача или прием данных. Прерывание приводит к прекращению работы компьютера над текущей программой, и переходу к работе над другой программой. Когда работа по запросу прерывания завершается, компьютер возвращается к работе над прерванной программой.
36-1. Вопросы
1. Нарисуйте блок-схему компьютера.
2. Каковы функции следующих блоков компьютера?
а. Блока управления.
б. Арифметико-логического устройства.
в. Памяти.
г. Ввода.
д. Вывода.
3. Какова функция ROM (памяти только для чтения) компьютера?
4. Что показывает последовательность команд, которые должны быть выполнены?
5. Чем определяется количество данных, которое может храниться в компьютере?
6. Дайте определение программы .
36-2. АРХИТЕКТУРА МИКРОПРОЦЕССОРА
Микропроцессор содержит четыре основные части: регистры, арифметико-логическое устройство, цепи синхронизации и управления и цепи дешифрации. Микропроцессор сконструирован таким образом, что команда или программа может быть извлечена из памяти, помещена в регистр команд и дешифрована. Программа влияет на цепи синхронизации, управления и дешифрации. Программа позволяет оператору направлять данные в различные регистры и арифметико-логическое устройство и извлекать их оттуда. Регистры и арифметико-логическое устройство используются микропроцессором для обработки данных и информации.
Различные микропроцессоры отличаются друг от друга архитектурой и набором команд. На рис. 36-5 изображены основные части многих 8-разрядных микропроцессоров. Поскольку названия и количество регистров в различных микропроцессорах различны, они изображены и перечислены отдельно.
Рис. 36-5. Узлы 8-разрядного микропроцессора.
Аккумулятор— это регистр наиболее часто используемый в микропроцессоре. Он используется для приема или хранения данных из памяти или устройства ввода/вывода. Его работа также связана с работой арифметико-логического устройства. Количество разрядов в аккумуляторе определяет размер слова в микропроцессоре. В 8-разрядном микропроцессоре размер слова — 8 разрядов.
Регистр условия кода— это 8-разрядный регистр, позволяющий программисту проверить состояние микропроцессора в некоторой точке программы. В зависимости от микропроцессора этот регистр может называться регистром состояния процессора, регистром состояния или флаговым регистром (регистром признака). Один разряд в этом регистре называется флаговым разрядом. Чаще всех встречаются флаг переполнения, нулевой флаг и флаг знака. Флаг переполнения используется во время арифметических действий для определения необходимости переноса или заема. Нулевой флаг используется для определения наличия нулей во всех разрядах результата или команды. Флаг знака используется для указания знака числа — положительный или отрицательный. Из 8 разрядов этого регистра процессоры Motorola 6800 и Zilog Z80 используют 6 разрядов; процессор Intel 8080А использует 5; процессор MOS Technology 6502 использует 7.
Счетчик команд— это 16-разрядный регистр, содержащий адрес команды, извлеченный из памяти. По мере того как команды выполняются, содержимое счетчика увеличивается на единицу для извлечения адреса следующей команды. Содержимое счетчика команд может только увеличиваться. Однако, последовательность команд может быть изменена с помощью команд ветвления или перехода.
Читать дальше