Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Примеры отчетов / ASM. Лаб. 4.docx
Скачиваний:
60
Добавлен:
01.10.2019
Размер:
31.77 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М. А. БОНЧ-БРУЕВИЧА"

Факультет инфокоммуникационных сетей и систем

Кафедра программной инженерии и вычислительной техники

Лабораторная работа №4

«ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ»

по дисциплине «Машинно-зависимые языки программирования»

Выполнил:

студент 1 курса

дневного отделения

группы ИКПИ-##

Фамилия И. О.

Санкт-Петербург 2019

А. Постановка задачи

Задав одномерный массив целочисленных данных в одном из заданных форматов (signed/unsigned char — byte, signed/unsigned int— word, signed/unsigned long — dword), реализовать обработку массива, как указано в варианте. Длина массива N. Исходные данные задать самостоятельно, учитывая формат элементов массива А.

В программе должны быть предусмотрены функции ввода-вывода элементов массива и его обработки. Исходные данные должны вводиться корректно (организовать проверку). Тип результата определяется из контекста задачи.

Найти сколько положительных элементов массива удовлетворяют условию .

Б. Разработка алгоритма

MS DOS. TASM. SIGNED INT. 5 элементов в массиве.

Регистры 16-битные (AX, BX…). Используются функции DOS (int 21h).

Программа на ASM:

  1. Вывод пользовательского приглашения к вводу: "ENTER C: ".

  2. Ввод пользователем числа со знаком C.

  3. Если число введено неверно, то вывод: "INCORRECT. " — и возврат к п. 2.

  4. Конвертирование числа из ASCII формата в BIN.

  5. Вывод пользовательского приглашения к вводу: "ENTER D: ".

  6. Ввод пользователем числа со знаком D.

  7. Если число введено неверно, то вывод: "INCORRECT. " — и возврат к п. 6.

  8. Конвертирование числа из ASCII формата в BIN.

  9. Вывод пользовательского приглашения к вводу чисел массива: "ENTER 5 ELEMENTS: ".

  10. Ввод пользователем элемента массива (число со знаком).

  11. Если число введено неверно, то вывод: "INCORRECT. " — и возврат к п. 10.

  12. Конвертирование числа из ASCII формата в BIN.

  13. Запись полученного числа в очередной элемент массива

  14. Если не было введено 5 чисел, то возврат к п. 10.

  15. Вызов функции лабораторной работы.

  16. Вывод результата и выход из программы.

В. Таблица идентификаторов

N

Обозначение в задаче

Идентификатор

Назначение

1

C

NUMBER_C (dw)

Входные данные

2

D

NUMBER_D (dw)

3

Массив

NUMBERS (dw 5)

3

MULT10

Промежуточные данные TASM

4

BIN_VALUE

5

ENDLINE

6

MESSAGE1

7

MESSAGE2

8

MESSAGE_ARR

9

N

bN (5)

10

Результат

RESULT

Выходные данные

Г. Таблица результатов

Результаты вычислений приведены ниже в таблице вычислений.

Тип

C

D

Массив

X

Signed Word

0

10

0, 1, 2, 9, 10

TASM: 5

Вручную: 5

0

10

0, -1, -2, -9, -10

TASM: 1

Вручную: 1

0

10

-1, 1, -2, 2, -3

TASM: 2

Вручную: 2

0

10

11, -12, 13, -14, 15

TASM: 0

Вручную: 0

-10

0

0, 1, 2, 9, 10

TASM: 1

Вручную: 1

-10

0

0, -1, -2, -9, -10

TASM: 1

Вручную: 1

10000

20000

1, 100, 10000, 20000, 30000

TASM: 3

Вручную: 3

-10000

10000

-10001, -5, 0, 5, 10001

TASM: 2

Вручную: 0

Соседние файлы в папке Примеры отчетов