Название: Программирование на языках СИ и Ассемблер - Методические указания (Н.В. Городник)

Жанр: Информатика

Просмотров: 1303


1.  задание и методические указания к выполнению курсовой работы

 

Написать подпрограмму на Ассемблере, выполняющую действия над массивами байтов (строками) в соответствии с вариантом из табл. 1–8. Подпрограмма должна вызываться из Си-программы. Следует написать программу на языке Си, содержащую прототип ассемблерной функции, ввод исходных данных, вызов подпрограммы и вывод результата.

Каждая строка описана в Си-программе в виде байтового массива и заканчивается двоичным нулем. Строки имеют разную длину. В функцию передаются две строки и один целый параметр (байт). Функция возвращает модифицированные строки и одно целое значение (байт или слово). Модифицированная строка помещается на место первой строки или в отдельный массив.

 

Передача строк в функцию:

1 – по ссылке

2 – через глобальные переменные

 

Передача целых значений в функцию:

1 – по значению

2 - по ссылке

 

Действия над строками:

 

1 – объединить соответствующие нечетные байты строк по «или». Целый параметр – длина второй строки.

2 – поменять местами соответствующие четные байты строк. Целый параметр – максимально допустимое  количество замен.

3 – нечетные байты первой строки поменять с четными байтами второй строки. Целый параметр – длина первой строки.

4 – из первой строки побайтно вычесть вторую. Целый параметр прибавлять к результату вычитания.

5 – четные байты первой строки сложить с нечетными байтами второй строки. Целый параметр – максимальное количество сложений.

6 – ко всем элементам первой строки прибавить целый параметр. В конец первой строки дописать вторую строку.

7 – на место четных байтов первой строки записать соответствующие байты из второй строки, объединенные по «и» с целым параметром.

8 – к нечетным байтам первой строки прибавить четные байты второй строки. Целый параметр – максимальное количество сложений

9 – сложить попарно байты второй строки и записать их на место соответствующих четных байтов первой строки. Целый параметр – количество пар во второй строке.

 

Формирование целого результата:

1 – длина первой строки

2 – длина второй строки

 

Возврат целого результата:

1 – по ссылке

2 – через имя функции