Составители:
60 
Побитовая обработка данных  обеспечивается в базовой ЭВМ командами 
логического  умножения  (AND),  циклического  сдвига  влево  (ROL)  и 
вправо (ROR), а также командами инвертирования (CMC) и очистки (CLC) 
регистра  переноса.  Эти  команды  часто  используются  для  упаковки 
информации  в  памяти  ЭВМ  (например,  размещения  в  одном  слове 
нескольких  небольших  чисел  или  кодов)  и  ее  распаковки,  обработки 
текстовой информации, умножения (деления) на 2, 4, 8 ... и т. п. 
Команда  AND  М  выполняет  над  каждым  разрядом  содержимого 
аккумулятора и содержимым ячейки памяти с адресом М булеву операцию 
«И».  Результат  выполнения  команды  для  каждой  пары  битов  операндов 
равен единице только тогда, когда оба бита равны единице; в остальных 
случаях  бит  результата  равен  нулю.  Так  как  аналогичный  результат 
получается и при поразрядном умножении битов (0х0 = 0, 0х1 = 0, 1х0 = 0 
и 1х1 = 1), то команда называется логическим умножением. Эти свойства 
позволяют выделять или очищать определенные биты слова. 
Таблица 2.14 
Третий вариант программы суммирования элементов массива  
Адрес 
Содержимое 
Комментарии 
Код 
Мнемоника 
5 
6 
… 
F 
0000 
FFE0 
… 
0010 
… 
Ячейка, отведенная для накопления результата. 
Отрицательное число элементов массива (-32) 
Текущий адрес элемента массива  
10 
… 
2F 
… 
… 
Численные значения элементов массива 
30 
31 
32 
33 
34 
35 
F200 
480F 
0006 
С031 
3005 
F000 
CLA 
ADD (F) 
ISZ 6 
BR 31 
MOV 5 
HLT 
Очистка аккумулятора 
Суммирование очередного элемента массива. Так 
как сначала в индексную ячейку F помещен адрес 
первого  элемента  массива  (10),  то  после  первого 
выполнения дан-ной команды содержимое ячейки 
F  увеличится  на  1  и  будет  указывать  на  второй 
элемент массива, после второго  выполнения  –  на 
третий элемент и т.д. 
Наращивание на  1 счетчика элементов  массива и 
переход  к  команде  31,  пока  его  содержимое 
меньше нуля 
Запись результата в ячейку 5 
Останов ЭВМ 
  В  качестве  последнего  примера  упрощения  циклических  программ 
рассмотрим  получение  количества  нечетных  элементов  массива, 
расположенного  в  ячейках  с  адресами  от  010  до  02F.  Программа  для 
решения этой задачи приведена в табл. 2.15. 
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »
