Научная литература
booksshare.net -> Добавить материал -> Физика -> Джонс М.Х. -> "Электроника - практический курс" -> 163

Электроника - практический курс - Джонс М.Х.

Джонс М.Х. Электроника - практический курс — М.: Постмаркет, 1999. — 528 c.
ISBN 5-901095-01-4
Скачать (прямая ссылка): elektronika1999.djvu
Предыдущая << 1 .. 157 158 159 160 161 162 < 163 > 164 165 166 167 168 169 .. 195 >> Следующая

машинном коде, теперь выражена посредством мнемоники и меток.
Табл. 14.3
Код операции Операнд Комментарий
ADDER / метка, задающая начало подпрограммы
LDA BOXONE / загрузить первое число в аккумулятор из ячейки памяти
BOXONE
CLC / сбросить признак переноса в ноль
ADC BOXTWO / прибавить второе число из ячейки памяти BOXTWO к
содержимому аккумулятора
STA SUMBOX / сохранить эту сумму чисел в ячейке памяти SUMBOX
RTS / конец этой части программы
454 МикроЭВМ и их применения
Чтобы запустить программу, написанную на языке ассемблера, необходимо
сначала запустить "дешифрующее" программное средство, называемое
ассемблером, для преобразования мнемоники и меток в двоичный машинный код
и удаления полей комментария. Затем оттранслированная программа в
машинном коде запускается обычной инструкцией CALL, в которой теперь
удобно сослаться на начальную метку программы, а именно: CALL ADDER.
МикроЭВМ ВВС Micro содержит полезный ассемблер как часть встроенной
операционной системы. В частности, ассемблер хорошо сопрягается со
средствами языка Бейсик, так что части программы, написанные на языке
ассемблера, могут быть вставлены в программу, написанную на Бейсике,
только они должны быть заключены в пару квадратных скобок: [ ]. Обычно
участку программы на языке ассемблера предшествуют одна или две строки на
Бейсике. Прежде всего необходимо сообщить программному счетчику, откуда
начинать, для чего переменной Р% присваивается номер ячейки памяти; затем
мы определяем ячейки памяти для используемых меток. В дальнейшем
документирование можно осуществлять также средствами Бейсика, то есть
пометкой REM (REMark, замечание). Вот наша программа сложения на языке
ассемблера, готовая для непосредственного ввода в микроЭВМ ВВС Micro:
10 MODE 6: REM установка режима работы дисплея
20 Р%=&70: REM установка программного счетчика на ячейку
памяти &70
30 BOXONE=&8Q: BOXTWO=&81: SUMBOX=&82: REM onpe-
деление ячеек памяти для меток
40 [
50 .ADDER / метка, задающая начало подпрограммы
60 LDA BOXONE / загрузить первое число в аккумулятор из
ячейки памяти BOXONE
70 CLC / сбросить признак переноса в ноль
80 ADC BOXTWO / прибавить второе число из памяти BOXTWO
к содержимому аккумулятора
90 STA SUMBOX / сохранить эту сумму чисел в ячейке памяти
SUMBOX
100 RTS / конец части программы на языке ассембле-
ра; возврат в Бейсик
110 1
Введя эту программу, наберите RUN, чтобы запустить ее обычным способом.
Это приведет, по существу, к тому, что программа будет оттранслирована:
на экране появится текст программы в машинном коде, причем коды операций
и операнды будут аккуратно выведены в соответствующих столбцах. Теперь мы
должны поместить наши числа, которые нужно сложить, в соответствующие
ячейки памяти, помня о том, что у нас имеется удобная возможность
называть их по именам; например,
?BOXONE = 13
Программные средства 455
7B0XTW0 = 19
Чтобы запустить программу в машинном коде, наберите CALL ADDER, и
посмотрите результат в SUMBOX, то есть
PRINT 7SUMBOX
На экране появится ответ.
14.7.6 Языки высокого уровня
Мы только что убедились в том, что хотя язык ассемблера много ближе к
языку человека, нежели машинный код, он все же скучен и утомителен, когда
все сводится к простой арифметической операции. В частности, он не вполне
удобен для приема данных с клавиатуры и вывода их на экран и, на самом
деле, слишком подчеркивает сложность этих простых действий, которые нам
хотелось бы иметь готовыми.
Сегодня при программировании в большинстве случаев пользуются языком
высокого уровня, из которых самым распространенным на домашних
компьютерах является Бейсик; в профессиональных приложениях популярны
другие языки, такие как С и C++. Программисту, пишущему программы на
языке высокого уровня, нужны минимальные знания того, как в деталях
работает процессор, либо не нужны вовсе; для него все необходимые
регистровые операции и обработка признака переноса выполняются
автоматически. Команды имеют вид осмысленных выражений на английском
языке или математических операторов, а замечания и комментарии можно
включать совершенно свободно, предваряя их пометкой REM. Данные можно
легко ввести с клавиатуры, не заботясь о помещении их в определенную
ячейку памяти, а результаты вывести на экран дисплея или распечатать.
С использованием Бейсика нахождение нашей суммы почти тривиально по своей
простоте. Введите с клавиатуры:
PRINT 13+19
Компьютер откликнется на это, показав ответ:
32
В программу на Бейсике легко добавить в качестве дальнейшего
усовершенствования приглашение пользователю ввести его собственные числа,
которые надо сложить. Надпись, выводимую на экран оператором PRINT, можно
в дополнение к ответу украсить указателем "СУММА =".
10 REM ПРОГРАММА СЛОЖЕНИЯ ДВУХ ЧИСЕЛ 20 INPUT "ВВЕДИТЕ ПЕРВОЕ ЧИСЛО"; А
30 INPUT "ВВЕДИТЕ ВТОРОЕ ЧИСЛО"; В
456 МикроЭВМ и их применения
40 PRINT "СУММА ="; А + В 50 END
Наберите RUN, и вы увидите, как эта простая программа делает компьютер
Предыдущая << 1 .. 157 158 159 160 161 162 < 163 > 164 165 166 167 168 169 .. 195 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed