Обратимся к функциональной схеме микроЭВМ, показанной на рисунке. Процессор и ряд вспомогательных устройств образуют процессорный модуль. В него входит также тактовый генератор, определяющий ритм вычислений, и формирователь шин, т. е. наборов соединительных проводников, объединяющих одноименные выводы всех периферийных моделей. По роду передаваемой информации различают пишу данных, шину адресов и шину управления. По шинам данных передается в двоичном коде обрабатываемая информация, причем в обоих направлениях — от периферийных устройств к процессору и обратно. Информация передается в большинстве микропроцессоров восьми- или шестнадцатиразрядными числами, которые называют байтами.
К периферийным устройствам относятся прежде всего устройства памяти. Память разделяется на ячейки, имеющие каждая свой адрес. Ячейки содержат 8 или 16 (в зависимости от числа разрядов процессора) элементов памяти, например триггеров. Все ячейки объединены в одну БИС. По роду вспомогательных операций различают оперативную память — оперативное запоминающее устройство (ОЗУ) и постоянную память — постоянно запоминающее устройство (ПЗУ). В ОЗУ записываются промежуточные данные вычислений. Там же могут храниться и программы в случае, если микроЭВМ имеет универсальное назначение, т. е. может использоваться для различных целей. Информация в ОЗУ может записываться и считываться при работе ЭВМ, а после ее выключения теряется.
В отличие от ОЗУ из ПЗУ можно только считывать информацию. Она записана там раз и навсегда и не теряется при выключении ЭВМ. У специализированных ЭВМ в ПЗУ могут храниться программа, некоторые константы, необходимые при вычислениях. Данные закладываются в ПЗУ либо при изготовлении микросхемы, либо в процессе ввода ЭВМ в эксплуатацию.
К периферийным устройствам относятся также порты ввода и вывода, выполненные в виде 8- или 16-разрядных регистров. Они предназначены для подключения внешних устройств, различных датчиков и других поставщиков информации, клавиатуры ввода данных, устройств визуального отображения информации (дисплеев), исполнительных механизмов.
Все периферийные модули имеют входы для приема управляющего сигнала ВМ (выбор модуля). Он передается по шине адресов через соответствующие дешифраторы. В процессе работы ЭВМ в каждый данный момент этим сигналом включается только один модуль. Между ним и процессором происходит обмен информацией. Все порты имеют номера и активизируются при появлении на шине адресов кода, соответствующего их номеру. Кроме того, для включения в работу любого из периферийных модулей на шине управления должен появиться сигнал (ВМ), определяющий выбор группы модулей [порты или запоминающие устройства (ЗУ)] и направления обмена информацией, например сигнал чтения из модулей запоминающих устройств (ЧТЗУ), сигнал записи в модули запоминающих устройств (ЗПЗУ), сигнал чтения из порта ввода (ЧТВ), сигнал записи в порт вывода (ЗПВ).
Работа микроЭВМ происходит по алгоритму, определяемому программой. Программа состоит из последовательного набора команд. Каждый микропроцессор характеризуется определенной системой команд, т. е. полным перечнем элементарных действий, которые может выполнять данный микропроцессор. К ним относятся элементарные арифметические и логические операции, операции пересылки данных и т. и. Команды могут состоять из одного или двух-трех цифровых слов-байт. Первый байт любой команды содержит код операции. Он определяет число слов команды и те действия, которые должен выполнить микропроцессор. Эти сведения называют операндами.
При работе микропроцессора выполнение любой из команд, записанной в программе, начинается с чтения ее кода из ЗУ. Процессорный модуль выдает в шину адресов код адреса ячейки памяти, в которой записан код операции команды. Одновременно по шине управления поступает сигнал чтения из памяти ЧТЗУ. В результате код операции команды поступает из ячейки памяти в шину данных и считывается процессорным модулем. Микропроцессор декодирует код операции, определяет действия, которые ему необходимо выполнить, и приступает к выполнению команды. Во время ее выполнения микропроцессор может еще несколько раз обратиться к памяти для получения и записи данных или констант. После выполнения одной команды микропроцессор переходит к выполнению следующей, для чего снова обращается к памяти и вызывает из очередной ячейки код следующей команды.
Правильно и оптимально составлять программы для ЭВМ — непросто. Появилась специальная наука, занимающаяся именно этим делом, программирование. Программисту надо очень хорошо знать систему команд данной ЭВМ. Даже «простейший» микропроцессор, работающий с 8-разрядным кодом, может иметь до 28 = 256 различных команд. Разумеется, запомнить более 200 команд, представленных 8-разрядными двоичными числами, не может даже самый талантливый программист.