Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodicheskie_ukazania.doc
Скачиваний:
14
Добавлен:
03.03.2016
Размер:
6.75 Mб
Скачать

Пример отчета по лабораторной работе №1к лаб. Раб.№1

Министерство образования и науки Украины

Донецкий национальный технический университет

Кафедра компьютерной инженерии

Отчет

по лабораторной работе №1

на тему: Программирование арифметических выражений

Выполнил:

Проверил:

Донецк 2013

1. Задание

; a=2, b=-5, c=17.

2. Контрольный просчет результатов

Как видно из результатов просчета все данные и промежуточные результаты помещаются в поле памяти байт, поэтому все переменные будем описывать типом байт.

3. Блок-схема программы

4. Листинг программы

1 ;Условие

2 ; a^3+b*c/a

3 ; X= -----------.

4 ; a^2-b^2

5 ;a=2; b=-5; c=17;

6 0000 stack segment STACK

*Warning* LAB1.ASM(6) Reserved word used as symbol: STACK

7 0000 40*(??) db 64 dup(?)

8 0040 stack ends

9 0000 data segment

10 0000 02 a db 2

11 0001 FB b db -5

12 0002 11 c db 17

13 0003 ?? x db ?

14 0004 data ends

15 0000 code SEGMENT

16 assume ss:stack,ds:data,cs:code

17 0000 start proc far

18 ;--------------Возврат в dos

19 0000 1Epushds

20 0001 2B C0 sub ax,ax

21 0003 50 push ax

22 ;--Занесение в регистр ds адреса сегмента данных

23 0004 B8 0000s mov ax,data

24 0007 8E D8 mov ds,ax

25 ;--------------Начало программы

26 0009 A0 0000rmoval,a;а

27 000C F6 2E 0000r imul a ;а^2

28 0010 F6 2E 0000r imul a ;a^3

29 0014 8A D8 mov bl,al;bl:=a^3

30 0016 A0 0001r mov al,b ;b

31 0019 F6 2E 0002r imul c ;b*c

32 001D F6 3E 0000r idiv a ;b*c/a

33 0021 02 C3 add al,bl ;a^3+b*c/a

34 0023 8A D8 mov bl,al ;числитель в bl=a^3+b*c/a

35 0025 A0 0000r mov al,a ;a

36 0028 F6 2E 0000r imul a ;a^2

37 002C 8A C8 mov cl,al ;cl:=а^2

38 002E A0 0001r mov al,b ;b

39 0031 F6 2E 0001r imul b ;b^2

40 0035 2A C8 sub cl,al ;знаменатель cl=a^2-b^2

41 0037 8A C3 mov al,bl ;числитель в al=a^3+b*c/a

42 0039 98 cbw ;подготовка к делению

43 003A F6 F9 idiv cl ;в al частное

44 003C A2 0003r mov x,al ;x:=al

45 003F CB st_ret: ret

46 0040 start endp

47 0040 code ends

48 end start

Symbol Name Type Value

??DATE Text "29/05/12"

??FILENAME Text "LAB1 "

??TIME Text "16:32:16"

??VERSION Number 030A

@CPU Text 0101H

@CURSEG Text CODE

@FILENAME Text LAB1

@WORDSIZE Text 2

A Byte DATA:0000

B Byte DATA:0001

C Byte DATA:0002

START Far CODE:0000

ST_RET Near CODE:003F

X Byte DATA:0003

Groups & Segments Bit Size Align Combine Class

CODE 16 0040 Para none

DATA 16 0004 Para none

STACK16 0040ParaStack

5. Дапм памяти до выполнения программы:

Дамп памяти после выполнения программы:

По адресу ds:0003 находится переменная Х, которая до выполнения программы равна 0, а после выполнения 1.

6. Выводы

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]