Главная -> Книги (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) (93) (94) (95) (96) (97) (98) (99) (100) (101) (102) (103) (104) (105) (106) (107) (108) (109) (110) (111) (112) (113) (114) (115) (116) (117) (118) (119) (120) (121) (122) (123) (124) (26) в режимах адресации 3-6 содержимое регистра увеличивается или уменьшается на 1 или на 2. Следовательно, их можно использовать для прохождения вперед или назад по таблицам байтов или слов без дополнительных команд на модификацию указателей адреса. Автоинкрементные и автодекрементные режимы позволяют также использовать любой регистр как указатель стека со стандартными характеристиками: УС указывает на верхний элемент стека. При использовании R7, выполняющего функцию ПС, с некоторыми базовыми режимами адресации возможны четыре дополнительных режима: непосредственной, абсолютной, относительной и косвенной адресации: 9. Непосредственная адресация (ПА=010). Данная адресация имеет место при использовании автоинкрементной адресации для R7. Например, рассмотрим выполнение команды АООф1:10, R0. Непосредственный операнд 10 размещается за первым словом команды и суммируется с содержимым R0. После выборки этой команды содержимое R7 увеличивается на 2, что обеспечивает выборку операнда 10 по адресу из регистра R7, и затем R7 увеличивается на 2 для выборки следующей команды. 10. Абсолютная адресация (ПА = 011). Этот режим ставляет собой фактически режим косвенной непосредственной адресации, когда слово, следующее за первым словом команды, является абсолютным адресом операнда. Например, команда CLR@#1000 выполняет очистку ячейки памяти с адресом 1000. 11. Относительная адресация (ПА=110). При сложении индекса с содержимым R7 формируется исполнительный адрес по отношению к ПС R7. Этот режим адресации очень эффективен для построения позиционно независимых программ, допускающих перемещение в памяти. Когда команды программы перемещаются, операнд передвигается на то же самое число ячеек. Например, команда INC А (005267) обеспечивает увеличение содержимого ячейки А на 1. Адрес ячейки А определяется путем суммирования слова, следующего за командой, и содержимого ПС R7. 12. Относительная косвенная адресация (ПА==111). При использовании данного режима адресации, например при выполнении команды CLR®A , слово, следующее за первым словом команды, складывается с содержимым ПС RC для формирования косвенного адреса ячейки памяти. Система команд. В мини-ЭВМ СМ-3 (4), микро-ЭВМ «Электроника-60» команды классифицированы на следую- Двухоперандные команды СМ-3(4) Таблица 3-3 Мнемоника Операнд Описание MOV (В) CMP (В) BIS (В) BIC (В) BIT"(B) src, dst src, dst src, dst src, dst src, dst src, dst src, dst red, dst Операнд источника src пересылается но адресу операнда приемника dst Операнд источника src прибавляется к операнду приемника dst, н результат записывается в dst Из операнда приемника dst вычитается операнд источника src, и результат записывается по адресу dst Сравнение операндов источника и приемника и установка признаков N, Z, V, С Логическая операция ИЛИ содержимого src и dst, результат записывается по адресу dst Сброс разрядов операнда src, соответствующих установленному разряду операнда dst Установка признаков N, Z в соответствие с результатом логической операции И над содержимым src и dst, значение операндов не изменяется Логическая операция «исключающее ИЛИ» над содержимым регистра и dst, результат записывается в dst Примечание. Формат команд см. на рис. 3-22, а. щие типы: двухоперандные, однооперандные, управления программой и дополнительные. Двухоперандные и однооперандные команды приведены в табл. 3-3 и 3-4 соответственно. Почти все операции в соответствии с данными командами можно выполнять над словами и байтами, что указывается символом В, например MOV передает 16-битное слово, а MOVB - байт. В зависимости от режима адресации один или оба операнда для команды MOV(B), которая наиболее часто встречается в программах СМ ЭВМ, могут храниться в памяти. Поэтому MOV выполняет функции команд загрузки LD и запоминания ST, а также PUSH и POP с автодекрементным и автоинкрементным режимами адресации. Эта команда допускает также передачи типа память - память без промежуточного запоминания данных в регистрах. Среди группы команд управления программой наиболее широко используются условные и безусловные переходы, составляющие 20 % команд. Если переход выполняется, то смещение умножается на 2 и результат прибавляется к со- Таблица 3-4 Однооперандные команды СМ-3(4)
Примечание. Формат команд см. на рис. 3-22, б. Команды управления программой СМ-3(4) Таблица 3-5
(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) (93) (94) (95) (96) (97) (98) (99) (100) (101) (102) (103) (104) (105) (106) (107) (108) (109) (110) (111) (112) (113) (114) (115) (116) (117) (118) (119) (120) (121) (122) (123) (124) |
|