Главная  Микропроцессорные системы 

[0] [1] [2] [3] [ 4 ] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92]

ные с процедурой программирования, в значительно упрощенном виде изображены на рис. 2.1. Такими узлами являются: память; счетчик команд (СК), или программный счетчик; аккумулятор (А)-основной из регистров арифметическо-логического устройства (АЛУ); связанный с ним регистр переполнения (РП), или линк-регистр; триггеры флагов АЛУ и файл (набор) регистров общего назначения (РОН).

Рассмотрим кратко каждый из этих узлов.

Память основная состоит из большого числа ячеек, каждая из которых может хранить одно двоичное число

Память

Аккумулятор

Триггеры (рлагод АПУ

Счетчик

команд

А

РазрЛ

РазрВ

Регистры общего

назначения (Файп регистров)

Рис 2.1. Основные программно-доступные узлы микро-ЭВМ

определенной разрядности, называемое словом. Так, например, устройство памяти, показанное на рис. 2.1, предназначено для хранения 8-разрядных слов. Каждая ячейка памяти имеет свой номер, или адрес, по которому к ней обращаются. Если в памяти может храниться 65536 (2) слов, то адресами являютея числа 0,1, ... ..., 65535. Одна ячейка памяти может использоваться либо для хранения одного двоичного числа данных, либо одной комадды или ее части, закодированной в виде двоичного числа. Команды некоторой элементарной программы хранятся в памяти в последовательно расположенных ячейках. Машина извлекает из памяти очередную команду и выполняет соответствующую ей операцию, после чего обращается к следующей команде, извлекая ее из следующей ячейки памяти и т. д.



Запоминающие устройства (ЗУ) можно разделить на два основных типа:

запоминающие устройства с произвольной выборкой (ЗУПВ), или оперативные запоминающие устройства (ОЗУ);

постоянные запоминающие устройства (ПЗУ).

Устройства первого типа используются для хранения данных, изменяющихся в процессе вычислений, в то время как в ПЗУ запоминается неизменная информация, такая как программы, подпрограммы, константы, таблицы и т. п. Запись в ПЗУ осуществляется, как правило, в процессе ее изготовления. При отладке и модификации программ бывает необходимо изменить содержимое ПЗУ. Такая возможность имеется в перепрограммируемых ПЗУ (ППЗУ), позволяющих производить такие изменения несколько раз в процессе эксплуатации устройства без существенного ухудшения его характеристик.

Счетчик команд (СК) используется для хранения информации об адресе той ячейки памяти, в которой находится очередная команда программы. Так как команды, как правило, хранятся в ячейках памяти с последовательно возрастающими адресами, то после выполнения очередной команды содержимое СК увеличивается на единицу, в результате чего автоматически указывается адрес следующей команды. Иногда содержимое СК изменяется под действием самой программы. В результате этого осуществляется принудительная передача управления той области памяти, в которой помещается следующий участок программы.

Аккумулятор (А) является основным регистром микро-ЭВМ, в котором хранятся результаты текущих арифметических и логических операций, выполняемых в АЛУ. Разрядность аккумулятора определяет разрядность информационного слова микро-ЭВМ и очень часто ввод и вывод данных производится именно через аккумулятор. Его содержимое может подвергаться анализу, на результатах которого основывается принятие решения о дальнейшем ходе вычислительного процесса в микро-ЭВМ.

Регистр переполнения (РП) - одноразрядный регистр-является расширением аккумулятора и служит для приема и хранения единицы переноса из его старшего разряда. Кроме того, РП используется для органи-



заций цепи циклического переноса, позволяющей осуществлять программно-управляемый сдвиг информации влево или вправо за счет соединения старшего и младшего разрядов аккумулятора. Состояние РП может анализироваться с целью принятия логических решений, определяющих ход вычислительного процесса.

Триггеры флагов фиксируют определенные состояния АЛУ и упрощают процедуру программирования ряда операций, выполняемых только при реализации определенных условий. В их число могут входить:

триггер нулевого результата Z, состояние которого равно «I» только в том случае, если результат текущей операции равен нулю;

триггер знака результата S, устанавливаемый в единичное состояние, если результат - отрицательное число;

триггер четности Р, находящийся в состоянии «I» в случае четности результата текущей операции.

Регистры общего назначения (РОН) значительно расширяют вычислительные возможности микро-ЭВМ. Эти регистры могут использоваться в качестве рабочих регистров центрального процессора (ЦП) для временного хранения промежуточных результатов (сверхоперативная память), для выполнения арифметических операций с числами двойной разрядности, для регистровой адресации ячеек памяти и многих других целей.

Указанные регистры, обозначенные буквами В, С, D, Е, Н и L, могут использоваться либо раздельно с индивидуальной адресацией, либо парами ВС, DE и HL, при этом каждая пара регистров рассматривается как один регистр удвоенной разрядности. В последнем случае пара адресуется по первому из регистров - В, D, Н. Число регистров в зависимости от сложности микро-ЭВМ может достигать 20 и более.

Для иллюстрации взаимодействия основных элементов микро-ЭВМ рассмотрим пример составления простейшей программы.

Пример. Пусть требуется вычислить арифметическое выражение (13+15)/2+21X2. Для этого программа и числовые данные должны быть записаны в память машины в форме двоичных чисел. Выделим произвольный участок памяти, начиная с 11-й ячейки, для хранения программы, а числовые данные запишем в ячейки, начиная с номера 50. Далее разобьем всю задачу на элементарные шаги, которые описываются системой



[0] [1] [2] [3] [ 4 ] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92]

0.0012