Программирование внешних устройств

Автор работы: Пользователь скрыл имя, 19 Декабря 2013 в 21:49, лабораторная работа

Краткое описание

Три массива в памяти заданы начальными адресами и длинами. Вычислить и вывести на устройство вывода среднее арифметическое параметров этих массивов.
Определить среднее арифметическое первых отрицательных чисел в массивах.
Определить количество нечетных чисел.

Прикрепленные файлы: 1 файл

Laboratornaya_rabota_5.docx

— 19.07 Кб (Скачать документ)

Лабораторная работа 5

 

 

Три массива в памяти заданы начальными адресами и длинами. Вычислить и вывести на устройство вывода среднее арифметическое параметров этих массивов.

 

rd #85

wr R1

rd #14

wr R2

call M

wr R6

rd #100

wr R1

rd #4

wr R2

call M

wr R7

rd #110

wr R1

rd #9

wr R2

call M

add R7

add R6

div #3

out

hlt

M: rd @R1

wr R3

L2: rd @R1+

wr R4

sub R3

js LI

mov R3,R4

LI: JRNZ R2,L2

rd R3

ret

 

 

 

 

 

 

 

 

 

 

 

 

 

Определить  среднее арифметическое первых отрицательных чисел в массивах

 

rd #85

wr R1

rd #14

wr R2

call M

wr R6

rd #100

wr R1

rd #4

wr R2

call M

wr R7

rd #110

wr R1

rd #9

wr R2

call M

add R7

add R6

div #3

out

 

hlt

M: rd @R1

wr R3

L2: rd @R1+

wr R4

rd #0

sub R4

js LI

jns 33

mov R3,R4

LI: JRNZ R2,L2

rd R3

ret

 

 

 

11

Определить количество нечетных чисел


Ищет  все нечетные числа в массивах и делит на 3

 

rd #85; загрузка параметров массивов

wr R1

rd #14

wr R2

call M; вызов подпрограммы

wr R6

rd #100

wr R1

rd #4

wr R2

call M

wr R7

rd #110

wr R1

rd #9

wr R2

call M

 

rd R4

div #3

out

 

hlt; Подпрограмма

M: rd @R1+; загрузка 1-го элемента

wr R3

 

M1: rd @R1; определение четности

div #2

mul #2

sub R3

jnz 29; если число нечетное

jz 32; если четное

rd R4; если нечетное - добавление 1

add #1

wr R4

 

js LI

LI: JRNZ R2,M

ret

 

 

Ищет  сумму всех нечетных чисел в 3-х  массивах и делит на 3

 

rd #85; загрузка параметров массивов

wr R1

rd #14

wr R2

call M; вызов подпрограммы

wr R6

rd #100

wr R1

rd #4

wr R2

call M

wr R7

rd #110

wr R1

rd #9

wr R2

call M

 

rd R5

div #3

out

 

hlt; Подпрограмма

M: rd @R1+; загрузка 1-го элемента

wr R3

 

M1: rd R3; определение четности

div #2

mul #2

sub R3

jz 35; если четное

jnz 29; если число нечетное

rd R4; если нечетное - добавление 1

add #1

wr R4

 

rd R5

add R3

wr R5

 

js LI

LI: JRNZ R2,M

ret


Информация о работе Программирование внешних устройств