Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Система команд. Алфавит языка Ассемблера, данные, адресное пространство




Алфавит языка Ассемблера, данные, адресное пространство

Алфавит языка Ассемблер содержит:

1. 26 букв латинского алфавита от А до Z.

2. Цифры от 0 до 9.

3. Знаки #.,%;=()"+-&! и пробел.

4. Управляющие символы формата: ВК (возврат каретки), ПС (перевод строки), ПФ (перевод формата) и ГТ (горизонтальная табу­ляция).

МикроЭВМ «Электроника-60» является двухадресной ЭВМ, по­строенной на базе шестнадцатиразрядного микропроцессора серии К581. Внутреннее представление чисел, адресов и команд выполнено в восьмеричной системе счисления. Слово состоит из двух байтов, причем старший 15-й разряд является знаковым (рис. 27).

Старший байт Младший байт байт    
                               

 

Рисунок 27 – Представление чисел в микроЭВМ

Если в 15-м разряде записан 0, то знак числа в слове «+», если, то «-»• Отрицательные числа представляются в дополнительном коде. Команды записываются в одном, двух или трех последовательно ^доложенных словах (в зависимости от формата команды). Команды расширенной арифметики, т.е. операции над словами двойной длины (умножение, деление, сдвиги) и операции с плавающей запятой ис­пользуют двойные слова, т.е. 32-разрядные целые числа.

 

Адресное пространство, доступное программисту, показано на рис. 28. Оно состоит из восьми РОН, регистра состояния RS, входящих в состав микропроцессора и ОЗУ или ПЗУ.

 

RS   ОЗУ или ПЗУ (28К слов) Регистры пе­риферийных устройств (4К слов)   160000-177777
РОН RO
R1
R2 Векторы прерыва­- ния   000-377 Данные и программы     400-157777
R3
R4
R5
R6 (SP)
R7 (PC)

Рисунок 28 – Распределение адресного пространства

Полный объем адресного пространства, исключая РОН и RS, со­ставляет 216=64Kбaйт или 32К слов. Из них первые 28К являются ОЗУ или ПЗУ (от 0 до 157777g), начальные 256 адресов которого (от О до 377g) хранят исходные данные для прерывающихся программ (системная область памяти), а последние 4К слов отведены для адре­сации регистров состояний и данных периферийных устройств.

Система команд микроЭВМ «Электроника-60» содержит более 80 команд, полный список которых приведен в литературе. В таблице 10 сведены основные команды «Электроника-60», используя которые, можно освоить программирование на языке Ассемблер как для ЭВМ СМ-4, так и для других ЭВМ различных типов, поскольку принципы программирования для всех ЭВМ одинаковы.


 

 

Таблица 10 – Основные команды

Фор­мат Мнемо­код Восьмерич­ный код Признаки Содержание команды
N z V с
  MOV 01SSDD + +   - (D)->(S) - передача слова
MOVB 11SSDD + + о - (D)->(S) - передача байта
СМР 02SSDD + + + + (S) - (D) - сравнение слов
СМРВ 12SSDD + + + + (S) - (D) - сравнение байтов
ADD 06SSDD + + + + ((S) + (D))->(D) – сложение
SUB 16SSDD + + + + ((S) - (D))->(D) – вычита­ние
MUL 070RSS + +   + (RxS) - умножение (старшие ряды в R1, младшие - в Rу1)
DIV 071RSS + + + + (RuRv1)/(S) – деление (частное в R1, остаток –в Rу1)
  SWAB 0003DD + +     Перестановка байтов
CLRB 1050DD         Очистка
COMB 1051DD + +     Инвертирование
INCB 1052DD + + + - Прибавление единицы
DECB 1053DD + + + - Вычитание единицы
NEGB 1054DD + + + + Дополнение кода
ASRB 1062DD + + + + Арифметический сдвиг вправо
ASLB 1063DD + + + + Арифметический сдвиг влево
JMP 0001DD - - - - Засылка (D) в СК
JSR 004RDD - - - - Обращение к подпрограмме
RST 00020R - - - - Возврат из подпрограммы
SOB 077RKK - - - - Счет циклов
MARK 0064KK - - - - Восстановление указателя стека
  NOP   - - - - Нет операции
HALT   - - - - Останов
WAIT   - - - - Ожидание прерываний
RTI   + + + + Возврат из прерывания
BPT   + + + + Прерывание для отладки
IOT   + + + + Прерывание по вводу-выводу
RTT   + + + + Возврат из программы прерывания
  TRAP 104400+E + + + + Командное прерывание
ВР 000400+E - - - - Безусловный переход
BNE 001000+E - - - - Условный переход по # 0
BEQ 001400+E - - - - // по = 0
BGE 002000+E - - - - —//— по > 0
BLT 002400+E - - - - —//— по < 0
BGT 003000+E - - - - —//— по > 0
BLE 003400+E - - - - —//— по <. 0
BPL 100000+E - - - - —//— по плюсу
BMI 100400+E - - - - —//— по минусу

 

В таблице 10 приняты обозначения:

SS – адресация операнда-источника (S), символ S записан два­жды, так как операнд S в команде занимает два восьмеричных (или шесть двоичных) разряда;

DD – тип адресации операнда-приемника (D), символ D записан дважды, так как операнд D занимает в команде два восьмеричных (или шесть двоичных) разряда;

КК – восьмеричная константа (число);

Е – смещение PC;

R – один из РОН;

V – дизъюнкция (логическое ИЛИ).

Действие над признаками N, Z, V, С:

«+» - формируется по результату операции;

«-» - не изменяется;

«О» - очищается;

«I» - устанавливается.

Взятие в скобки означает, что в команде используется не сам операнд, например D, а адрес, в котором расположен операнд D, т.е. (D).

Все команды микроЭВМ двухбайтовые, т.е. занимают в памяти одно машинное слово.

б)

В системе команд используются четыре формата.

 

г)

Рисунок 29 – Форматы команд микроЭВМ «Электроника-60»

 

На рисунке 29 приняты обозначения:

 

КО – код операции, записывается в четырех разрядах (12-15) т.е. имеет всего 24=16 комбинаций, из них используются в виде кодов 14 комбинаций, коды 0001-0111 и 1001-1111, а коды 0000 и 1000 ука­зывают на принадлежность команды к 2, 3 или 4-му форматам и совместно с другими разрядами образуют расширенные коды операций;

S – адрес первого операнда, занимает шесть двоичных разрядов (6-11);

D – адрес второго операнда (он же адрес результата) занимает шесть двоичных разрядов (0-5).

Адреса S и D определяют способы адресации операндов. Формат 1 используется для оформления операций с плавающей запятой и операций расширенной арифметики. Он имеет вид, пред­ставленный на рисунке 29, а.

Формат 2 используется для одноадресных арифметических и логических операций (рис. 29, б).

Код операции занимает 10 разрядов, адрес операнда D – шесть двоичных разрядов.

Формат 3 используется для безадресных команд изменения признаков N, Z, V, С и команд управления работой процессора и пе­риферийных устройств. КО занимает все 16 разрядов (рис. 29, в).

Формат 4 используется для команд ветвления (рис. 29, г). КО и Е занимают по восемь разрядов.

Смещение Е – это приращение счетчика команд. Максимальное приращение составляет ±127, т.е. число, равное ±27 слов. Если усло­вие перехода выполнено, то к значению PC прибавляется два байта и еще ±Е слов, т.е. выполняется команда с адресом (РС+2байта ±Е). Ес­ли условие перехода не выполнено, то выполняется следующая, с ад­ресом (РС+2байта), команда.




Поделиться с друзьями:


Дата добавления: 2015-04-29; Просмотров: 1240; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.