Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Методы и средства программирования

 

При составлении программ для ПК используется язык Ассемблер, в котором машинные коды выражаются в шестнадцатеричной системе счисления (ШСС), а команды близкие по функциональному назначению объединяются в группы и обозначаются специальными символами-мнемокодами. При вводе программы в ПК команды из шестнадцатеричной системы счисления вновь переводятся в двоичную систему счисления. Мнемокоды и шестнадцатеричная система счисления служат лишь для написания программ, помогая программисту в ее составлении и прочтении.

ШСС образуется из двоичной системы счисления путем разбиения двоичного числа на группы по четыре бит и замены каждой группы числами, выраженными в ШСС. Десятичные числа 10, И, 12, 13, 14 и 15 обозначаются латинскими буквами А, В, С, D, Е и F.

Дес. сис. счисл. (В) 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15

ШСС(Н) О, 1,2,3,4,5,6,7, 8, 9, А, В, С, D, Е, F.

По назначению команды делятся на пять групп: команды пересылок, арифметико-логические команды, команды ввода-вывода, команды управления и специальные команды.

Типичным примером команды однобайтовой пересылки служит команда межрегистровой пересылки, мнемонический код которой имеет вид:

MOVRl,R: R—►Rl.

 

MOV Rl, R - это родовое имя целой группы операций, отличающихся друг от друга конкретными регистрами, между которыми осуществляется пересылка.

Пересылка информации между А и РОН

MOV ВА 47 АВ

MOV DA 57 AD

MOV СА 4F АС

MOV ЕА 5F АЕ

 

MOV АВ 78 ВА

MOV АС 79 СА

MOV AD 7А DA

MOV АЕ 7В ЕА

 

Всего в составе набора имеется 63 команды типа MOV. К семейству операций пересылок относится также команда, мнемокод которой имеет вид:

MVIR,D:D8—► R.

 

Символ D8 означает, что сама команда имеет двухбайтовый формат. Смысл всего семейства операций означает, что операнд D8, т.е. содержимое второго байта команды, передается в регистр, имя которого стоит на месте символа R. Всего таких команд восемь. Они позволяют записать операнд в любой из РОН в ячейку памяти, адрес которой хранится в регистровой паре HL, или в регистр-аккумулятор.

Ввод информации в А и РОН

 

MVIA ЗЕ D8A.

MVIB 06 D8B.

MVIC ОЕ D8C.

MVID 16 D8D.

MVIE IE D8E.

 

Группа команд арифметических и логических операций делится на четыре подгруппы (операции с одним операндом, с двумя операндами, операции

сложения над двумя 16-разрядными двоичными числами и операции сдвига содержимого регистра результатов).

Примеры мнемокодов арифметико-логических команд:

ADD R: A+R А; - сложение двух чисел.

SUB R: А - RА; - вычитание одного числа из другого.

IRN R: R + 1R; - увеличение на единицу соответствующего числа.

Сдвиг числа в А

Сдвиг чисел на один бит влево обеспечивает умножение сдвинутого числа на 2.
Сдвиг числа на один бит вправо обеспечивает деление этого числа на 2.
Сдвиг влево RLC 07

Сдвиг вправо RRC OF

 

Условные переходы применяются для ветвления программы. Они осуществляются только после выполнения арифметических или логических операций.


Если указанное в команде условие выполняется, то происходит переход программы по указанному адресу. Если указанное в команде условие не выполняется, то МП пропускает команду условного перехода и продолжает программу.

 

Пример: Сложить два числа: 2+5.

1. Для запоминания команды "Ввести в А МП" используем ячейку памяти с адресом 2048.

2. Для запоминания самого числа 2 используем ячейку памяти с адресом 2049.

3. Для запоминания команды "Ввести в РОН В" используем ячейку памяти с адресом 2050.

4. Для запоминания самого числа 5 используется ячейка памяти с адресом 2051.

5. Для запоминания команды "Сложить содержимое А и РОН В" используем ячейку памяти с адресом 2052.

В машинных кодах программа будет иметь вид:
1)0000.1000.0000.0000. 0011.1110. Ввести в А МП;

2)0000.1000.0000.0001. 0000.0010. Число 2;

3) 0000.1000.0000.0010. 0000.0110. Ввести в РОН В МП;

4)0000.1000.0000.0011 0000.0101. Число 5;

5) 0000.1000.0000.0100 1000.0000. Сложить А и РОН В.

На языке Ассемблер эта программа будет иметь вид:
1) 0800 ЗЕ Ввести в А МП;

2)0801 02 Число 2;

3) 0802 06 Ввести в РОН В МП;

4) 0803 05 Число 5;

5) 0803 80 Сложить содержимое А и РОН В,

где ЗЕ, 06 и 80 - команды управления работой МП, 02 и 05 - вводимые числа.

 

Вопросы для самоконтроля усвоения знаний:

 

1. Какие вы знаете системы счисления, коды, используемые в аналого-цифровых и цифроаналоговых преобразователях?

2. Как осуществляется перевод числа в двоичный, шестнадцатиричный и двоично-десятичный коды?

3. Программирование МП на языках низкого и высокого уровня.

4. Назначение, основные функции и состав операционных систем МП.

5. Как осуществляется программирование арифметических операций на МП?

 

<== предыдущая лекция | следующая лекция ==>
Элементы микропроцессоров | Требования ТБ до начала работы
Поделиться с друзьями:


Дата добавления: 2013-12-13; Просмотров: 474; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



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




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