Решение задач по математике | Обработка одномерных массивов а ассемблер | Matematiku5
Вузы по математике Готовые работы по математике Как писать работы по математике Примеры решения задач по математике Решить задачу по математике online

Обработка одномерных массивов а ассемблер


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

Обработка одномерных массивов

Наименование темы лабораторной работы:

Обработка одномерных массивов.

Цель. Обработка одномерных массивов на языке ассемблер с использованием регистров микропроцессора целочисленной арифметики и команд перехода.

Вариант 11

Все элементы в массиве С[1..N], меньше среднего арифметического положительных чисел массива, заменить на максимальное значение массива.

Словесный алгоритм решения задачи

Создаём одномерный массив С на языке программирования паскаль. Запускаем встроенный ассемблер. В созданном массиве определяем среднее арифметическое положительных чисел и максимальное значение массива. Заменяем числа, меньше среднего арифметического на максимальное. Выводим: изначальный массив, сумму, количество положительных чисел, среднее арифметическое, измененный массив.

Блок – схема

 

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

uses crt;

const n=10;

type mas=array[1..n] of integer;

var

C:mas;

i, sr, max, k,sum:integer;

begin

clrscr;

randomize;

sum:=0;

For i:=1 to n do begin

C[i]:=random(50)-25;

write(C[i]:4);

end;

asm

lea si, C

mov k,0

mov ax,0

mov cx, n

@1:mov bx,[si]

cmp bx,0

jl @2

add ax, bx

inc k

@2:add si,2

loop @1

mov sum, ax

mov dx,0

div k

mov sr, ax

lea si, C

mov bx,[si]

mov cx, n

@3:cmp bx,[si]

jge @4

mov bx,[si]

@4:add si,2

loop @3

mov max, bx

lea si, C

mov cx, n

@5:mov dx,[si]

cmp dx, ax

jge @6

mov [si],bx

@6:add si,2

loop @5

end;

writeln;

write(‘sum=’,sum);

writeln;

write(‘kol=’,k);

writeln;

write(‘sr=’,sr);

writeln;

write(‘max=’,max);

writeln;

For i:=1 to n do write (C[i]:4);

readkey;

end.

Вывод:

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

Наташа

Автор

Наташа — контент-маркетолог и блогер, но все это не мешает ей оставаться адекватным человеком. Верит во все цвета радуги и не верит в теорию всемирного заговора. Увлекается «нефрохиромантией» и тайно мечтает воссоздать дома Александрийскую библиотеку.

Распродажа дипломных

 Скидка 30% по промокоду Diplom2020

А ты боишься COVID-19?

 Пройди опрос и получи промокод