Реферат по предмету "Астрономия"


Асемблер Задание 4 - вар2

: LXI H, 8100 ;задание адреса первого элемента (HL:=8100H) MVI D, 40 ;задание кол-ва элементов XRA A ;обнуление аккумулятора MVI C, 00 ;обнуление регистра C (счетчик переполнений) X1: ADDM ;суммирование (A:=A+M(HL)) JNC X2 ;перейти на Х2 если нет переполнения INR C ;произошло переполнение → прибавить 1 к старшему байту результата суммирования X2: INX H ;присвоить HL адрес следующей ячейки (HL:=HL+1) DCR D ;уменьшение счётчика кол-ва элементов на 1 (D:=D-1) JNZ X1 ;если элемент не последний - продолжить суммирование MOVB, A ;пересылка младшего байта результата суммирования в регистр В Сумма 64х элементов находится в паре BC


ACP: MVID, 06 ;задаём кол-во сдвигов (6 сдвигов – деление на 64)

MOVA, C ;пересылаем старший байт в аккумулятор (C→A)

RAR ;циклический сдвиг вправо через ТС

MOVC, A ;возврат в C старшего байта

MOVA, B ;пересылаем младший байт в аккумулятор (B→A)

RAR ;циклический сдвиг вправо через ТС

MOVB, A ;возврат в B младшего байта

ORAA ;обнуление флага переполнения (ТС:=0) DCR D ;уменьшение счётчика кол-ва сдвигов на 1 (D:=D-1) JNZ ACP ;если сдвиг не последний – продолжить Среднее значение находится в регистре В

MOVA, B ;пересылаем среднее значение в аккумулятор

ADDB ;получаем в аккумуляторе значение 2АСР

JNC X3 ;перейти на Х3 если нет переполнения INR C ;произошло переполнение → прибавить 1 к старшему байту значения 2АСР X3: MOVB, A ;пересылка 2АСР в регистр В Значение 2АСР находится в паре ВС


AMAX: LXI H, 8100 ;задание адреса первого элемента (HL:=8100H) MVI D, 40 ;задание кол-ва элементов MOV A, M ;будем считать первый элемент максимальным (A:=M(HL)) X4: CMPM ;сравниваем максимальный элемент с текущим (A-М(HL))

JPX5 ;при S=0 (A-M(HL)≥0 → A≥M(HL)) переход на Х5 MOVA, M ;если же S=1 (A-M(HL)<0 → A<M(HL)), сделать текущий элемент максимальным X5: INX H ;присвоить HL адрес следующей ячейки (HL:=HL+1) DCR D ;уменьшение счётчика кол-ва элементов на 1 (D:=D-1) JNZ X4 ;если элемент не последний - продолжить Максимальное значение находится в аккумуляторе RAR ;циклический сдвиг вправо через перенос (деление на 2) ORAA ;обнуление флага переполнения (ТС:=0) MOVE, A;пересылка значения AMAX/2 в регистр E Значение AMAX/2 находится в регистре Е


REZ1: MOVA, B ;отправляем младший байт значения 2АСР в аккумулятор SUBE ;отнимаем AMAX/2 от младшего байта значения 2АСР JP X6 ;если результат неотрицателен - перейти на Х6 DCR C ;если результат отрицателен - вычесть 1 от старшего байта значения 2АСР X6: MOVB, A ;пересылаем младший байт значения (2АСР - AMAX/2) в регистр В Значение (2АСР - AMAX/2) находится в паре ВС


AMIN: LXI H, 8100 ;задание адреса первого элемента (HL:=8100H) MVI D, 40 ;задание кол-ва элементов MOV A, M ;будем считать первый элемент минимальным (A:=M(HL)) X7: CMPM ;сравниваем минимальный элемент с текущим (A-М(HL))

JMX8 ;при S=1 (A-M(HL)<0 → A<M(HL)) переход на Х8 MOVA, M ;если же S=0 (A-M(HL)≥0 → A≥M(HL)), сделать текущий элемент наименьшим X8: INX H ;присвоить HL адрес следующей ячейки (HL:=HL+1) DCR D ;уменьшение счётчика кол-ва элементов на 1 (D:=D-1) JNZ X7 ;если элемент не последний - продолжить Минимальное значение находится в аккумуляторе RAR ;циклический сдвиг вправо через перенос (деление на 2) ORAA ;обнуление флага переполнения (ТС:=0) MOVE, A;пересылка значения AMIN/2 в регистр E Значение AMIN/2 находится в регистре Е


!!!Значение Y теоретически не превышает два байта!!! YMAX = BE01H MULT: MOVD, E ;загрузить множитель (AMIN/2) в регистр D DCRD ;уменьшение на 1 множителя MOVA, C ;пересылка старшего байта множимого в аккумулятор X9: ADDC ;суммируем по одному значению DCRD ;уменьшить кол-во циклов суммирования на 1 JNZX9 ;если цикл не последний – повторить суммирование MOVC, A ;переслать старший байт Y в регистр С MOVD, E ;загрузить множитель в регистр D DCRB ;уменьшение на 1 множителя MOVA, B ;пересылка младшего байта множимого в аккумулятор X11: ADDB ;суммируем по одному значению JNCX12 ;если нет переполнения – перейти на Х12 INRC ;если было переполнение – увеличить старший байт на 1 X12: DCRD ;уменьшить кол-во циклов суммирования на 1 JNZX11 ;если цикл не последний – повторить суммирование STA 8150 ;отправить младший байт результата Y в ячейку 8150H MOVA, C ;переслать старший байт результата Y в аккумулятор STA 8151 ;отправить старший байт результата Y в ячейку 8151H RST 1



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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Производительность труда Минский подшипниковый завод
Реферат Основы теории финансов
Реферат Еволюція методології фахової соціальної роботи
Реферат Румянцева, Мария Андреевна
Реферат Горнотехническая рекультивация нарушенных земель (на примере ОАО "Кемма")
Реферат Специализированные психологические методики диагностики внутрисемейных отношений
Реферат Проблемы современной глобализации мировой экономики
Реферат На тему: Участие Узбекистана в международной жизни.
Реферат Аудиторные часы
Реферат Игорь Северянин И В Лотарев1887 - 1941
Реферат Значение политики президента Аргентины Кристины Фернандес де Киршнер
Реферат В плену больших мышц
Реферат Роль математики в современном естествознании
Реферат «Велика Вітчизняна» І кільце змарнованого Україною історичного часу
Реферат Аннотация основной образовательной программы по направлению подготовки 230100