Запуск вашей первой программы
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Теперь программу можно запустить на выполнение. Для этого в ответ на подсказку операционной системы DOS введите “ hello” и Enter. На экран выведется сообщение: Привет! Так как ваша программа небольшая, то сообщение очень быстро промелькнет на экране, и вы можете его не заметить. Для того чтобы остановить изображение на экране, нажмите клавиши Ctrl + O. Тогда результаты выполнения вашей программы вновь появятся на экране. Чтобы вернуться в исходное состояние, вновь кликните Ctrl + O.  Вы только что  выполнили свою первую программу на Ассемблере.

Таким образом, при написании и запуске программы, вы выполняете следующие шаги:

1. Создание алгоритма программы.

2. Написание исходного текста программы, желательно в редакторе FARа, с расширением ASM и именем по выбору.

3. Сохранение исходного текста (F2).

4. Транслирование исходного текста программы в объектный модуль, с помощью трансляторов MASM или TASM. Для чего занесите в командную строку команду  MASM имя программы .ASM и нажмите четыре (4) раза ENTER, или TASM имя программы и кликните один раз ENTER.

5. При выводе строк с ошибками в синтаксисе команд, исправьте ошибки и повторите пункты 3, 4.

6. При получении объектного кода программы, (Вы это увидите по появлению файла с именем Вашей программы и расширением .OBJ.), занесите в командную строку команду - Link имя программы, и кликните четыре раза (4) ENTER, или Tlink имя программы  и нажмите один раз ENTER.

7. В результате Вы получите исполняемый модуль программы. Вы это увидите по появлению файла с именем вашей программы и расширением .EXE.

8. Выделив этот файл и кликнув ENTER, вы заставите процессор исполнить программу.

9. Повторив нажатие, вы вернетесь в исходное состояние.

10. Сообщения о ошибках указаны в таблицах  6.1 и 6.2.

11. Результат выполнения программы Вы увидите на экране, если одновременно нажмете клавиши Ctrl и О.

Примеры программ на языке ассемблера.

5.1 Умножение двойных слов. (СОМ – программа)

 

TITLE EXDWMUL - Умножение двойных слов

CODESG SEGMENT PARA 'Code'

ASSUME CS:CODESG,DS:CODESG,SS:CODESG

   ORG 100H; Установить IP равным 100Н

BEGIN: JMP SHORT MAIN; Передать управление на метку MAIN.

MULTCND DW 3206H; Элементы данных.

                DW 2521H

MULTPLR  DW 6400H

               DW 0A26H

PRODUCT  DW 0

                 DW 0

               DW 0

               DW 0

MAIN PROC NEAR; Основная процедура

   Call E10XMUL; Вызвать процедуру 1-го умножения.

   Call Z10ZERO; Вызвать процедуру очистки произведения.

   Call F10XMUL; Вызвать процедуру 2-го умножения.

   Ret; Вернуться в основную программу.

MAIN Endp; Конец процедуры.

       Процедура умножение двойного слова на слово

E10XMUL PROC

   Mov AX,MULTCND+2; Переслать младшую часть двойного слова

    Mul MULTPLR; в АХ и умножить на множитель.

   Mov PRODUCT+4,AX; Сохранить произведение,  находящееся в

   Mov PRODUCT+2,DX; регистрах AX и DX.

   Mov AX,MULTCND; Переслать старшую часть двойного слова

  Mul MULTPLR; в АХ и умножить на множитель.

   Add PRODUCT+2,AX; Сложить результат

   Adc PRODUCT,DX; с полученным ранее.

   Ret; Вернуться в основную программу.

E10XMUL Endp; Конец процедуры.

     Процедура умножения двух двойных слов

F10XMUL PROC

   Mov AX,MULTCND+2; Второе слово множимого.

   Mul MULTPLR+2; Второе слово множителя.

   Mov PRODUCT+6,AX; Сохранить результат находящися

   Mov PRODUCT+4,DX; в регистрах AX и DX.

   Mov AX,MULTCND; Первое слово  множимого.

   Mul MULTPLR; Первое слово множителя.

   Add PRODUCT+4,AX; Сложить

   Adc PRODUCT+6,DX; с предыдущим результатом.

   Adc PRODUCT,00; Прибавить перенос.

   Mov AX,MULTCND; Первое слово множимого.

   Mul MULTPLR+2; Второе слово множителя.

   Add PRODUCT+4,AX; Сложить с предыдущим

   Adc PRODUCT+6,DX; результатом.

   Adc PRODUCT,00; Прибавить перенос.

   Mov AX,MULTCND; Первое слово множимого.

   Mul MULTPLR; Первое слово множителя.

   Add PRODUCT+2,AX; Сложить с предыдущим

   Adc PRODUCT,DX; результатом.

   Ret; Вернуться в основную программу.

F10XMUL Endp; Конец процедуры.

Дата: 2018-11-18, просмотров: 465.