Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы 27-38.doc
Скачиваний:
58
Добавлен:
23.04.2019
Размер:
69.12 Кб
Скачать

27. Языки программирования. Особенности объектного языка программирования. Использование символических имен при программирование.

Существует множество языков программирования. Различают:

Языки низкого и высокого уровня

Процедурно-ориентированные, объектно-ориентированные языки.

Эмпирические, функциональные языки.

Мнемонические языки и языки машинного кода

Иерархия языков программирования:

  1. Машинные коды

  2. Ассемблеры

  3. Языки низкого уровня (С, Фортран, Паскаль, Бейсик, Ангол, Ада)

  4. Языки высокого уровня (С++, Object Pascal, Java)

Для программирования микроконтроллеров используются языки Pascal, Basic, C, Ассеблер и другие.

Объектно-ориентированные языки программирования отличаются наличием особого элемента языка – объекта, экземпляра класса. Класс, являясь типом данных, объединяет данные и методы работы с ними. Основные особенности классов: инкапсуляция, наследование и полиморфизм. Первым языком, поддерживающим классы, является Simula. Развитие объектно-ориентированных языков программирования связанно с деятельностью шведского программиста Бьёрна Страуструпа, создателя языка С++.

При программировании часто используются символические имена. Они используются для обозначения команд, переменных и других конструкций языка.

Пример:

MOV A, B – команда на языке Ассемблера пересылки содержимого регистра В в А

Var N, M – объявление переменных N и M на языке Pascal

28. Программирование с использованием абсолютных и символических адресов. Примеры.

При программировании на языке Ассемблера часто используются как абсолютные так и символические адреса. При программировании на языка более высокого уровня абсолютные адреса используются крайне редко. Использование символических адресов позволяет повысить переносимость и надёжность кода.

Примеры использования абсолютных адресов:

sta 0900

Примеры использования символических адресов:

lxi D, 09e0

stax d

29. Операции управления: метки, ветвления, проверки. Примеры программирования.

Метка – конструкция языка, позволяющая организовывать непоследовательный переход к определённому участку кода. Пример использования меток:

label:add b

dcr c

jz end

jmp label

end (метки выделены жирным)

Ветвление спроверкой может быть организовано с использованием меток и операторов безусловного перехода. Пример:

Mov A, B

Sub C

Inr A

Dcr A

Jz var1

Jmp var2

var1: …

Jmp end

var2: …

Jmp end

end: …

30. Структура цикла: начальная установка, обработка, изменение массива данных. Примеры использования цикла в программах.

Цикл состоит из следующих частей: инициализации, условия выхода, тела, изменения счетчика.

Рассмотрим пример организации цикла на языке Ассемблера

mvi b, 04

mvi c, 02 – счетчик цикла

mvi a, 00

label:add b – тело цикла

dcr c – уменьшение счетчика

jz end – выход из цикла (условие)

jmp label - возврат

end: sta 0900 – точка выхода из цикла

rst1

Пример обработки массива данных длинной hAF (каждое число увеличивается на h0E)

lxi D, 09e0

mvi B, 0E

mvi c, AF – счетчик цикла

label: ldax d //

adc B //

stax d // – тело цикла

inx d //

dcr c – уменьшение счетчика

jz end – выход из цикла (условие)

jmp label - возврат

end: rst1:– точка выхода из цикла