feat: opd#3

This commit is contained in:
maxbarsukov 2023-02-12 21:46:07 +03:00
parent a49dc63caa
commit 120a1a2806
8 changed files with 66 additions and 0 deletions

BIN
.docs/trigun.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

View File

@ -0,0 +1,13 @@
# Лабораторная работа #3
<img alt="trigun gif" src="https://github.com/maxbarsukov/itmo/blob/master/.docs/trigun.gif" height="150">
По выданному преподавателем варианту восстановить текст заданного варианта программы, определить предназначение и составить описание программы, определить область представления и область допустимых значений исходных данных и результата, выполнить трассировку программы.
**Ход работы, содержание отчета и контрольные вопросы описаны в методических указаниях.**
## Вариант 15311
![Задание](./docs/task.png)
- [Отчёт](./docs/report.pdf)

View File

@ -0,0 +1,27 @@
ORG 0x455
arr_first_elem: WORD 0x046C ; WORD $arr
arr_last_elem: WORD 0xA000 ; адрес последнего элемента массива
arr_length: WORD 0xE000 ; = WORD 3
result: WORD 0x0200 ; = WORD ?
START:
CLA
ST result
LD #3
ST arr_length
ADD arr_first_elem
ST arr_last_elem
repeat: LD -(arr_last_elem)
ROR ; нечёт => C = 1
BCS c_is_1
ROR
c_is_1: CMC
CLA ; \
NOT ; |= LD result
AND result ; /
ROL
ST result ; result = result * 2 + C
LOOP $arr_length
JUMP repeat
HLT
arr: WORD 0x1000, 0x845D, 0x0740

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

@ -0,0 +1,26 @@
455: 046C
456: A000
457: E000
458: 0200
459: 0200
45A: EEFD
45B: AF03
45C: EEFA
45D: 4EF7
45E: EEF7
45F: ABF6
460: 0480
461: F401
462: 0480
463: 0380
464: 0200
465: 0280
466: 2EF1
467: 0400
468: EEEF
469: 8457
46A: CEF4
46B: 0100
46C: 1000
46D: 845D
46E: 0740