Обсуждение участника:HelemendikKO
Добавить темуЛабораторная работа №4
[править]Вариант №17
Условие
[править](x+3)^2/x при x>25
(2x^2+7)/x при x<25
Блок схема
[править]Код программы
[править]IN
WR 30
SUB #25
JS 010
RD 30
ADD #3
WR 31
MUL 31
DIV 30
JMP 017
RD 30
MUL 30
MUL #2
ADD #7
WR 31
RD 31
DIV 30
OUT
HLT
Несколько значений из программы
[править]IR 30 OR 36
IR 1 OR 9
Размещение данных в ОЗУ:
[править]Адрес | Команда | Код |
---|---|---|
000 | IN | 010000 |
001 | WR 30 | 220030 |
002 | SUB #025 | 241030 |
003 | JS 010 | 130012 |
004 | RD 030 | 210030 |
005 | ADD #3 | 250030 |
006 | WR 31 | 250002 |
007 | MUL 31 | 231007 |
008 | DIV 30 | 210031 |
009 | JMP 017 | 220031 |
010 | RD 30 | 260030 |
011 | MUL 30 | 100021 |
012 | MUL #2 | 410000 |
013 | ADD #7 | 250050 |
014 | WR 031 | 220032 |
015 | RD 031 | 210030 |
019 | DIV 030 | 260033 |
020 | OUT | 02000 |
021 | HLT | 090000 |
Программа в форме таблицы
[править]Адрес | Команда |
---|---|
000 | IN |
001 | WR 30 |
002 | SUB #025 |
003 | JS 010 |
004 | RD 030 |
005 | ADD #3 |
006 | WR 31 |
007 | MUL 31 |
008 | DIV 30 |
009 | JMP 017 |
010 | RD 30 |
011 | MUL 30 |
012 | MUL #2 |
013 | ADD #7 |
014 | WR 031 |
015 | RD 031 |
019 | DIV 030 |
020 | OUT |
021 | HLT |
Последовательность состояния регистров ЭВМ
[править]Адрес | Команда | Код команды | Коментарии |
---|---|---|---|
000 | IN | 010000 | Ввод Х |
001 | WR 30 | 220030 | Запись в ячейку 30 |
002 | SUB #025 | 241030 | Сравнение с 25 |
003 | JS 010 | 130012 | Переход, если отрицательно (-) |
004 | RD 030 | 210030 | Чтение х |
005 | ADD #3 | 250030 | Прибавление 3 |
006 | WR 31 | 250002 | Запись в ячейку 31 |
007 | MUL 31 | 231007 | Умножение на ячейку 31 |
008 | DIV 30 | 210031 | Деление на х |
009 | JMP 017 | 220031 | Переход в 17 ячейку |
010 | RD 30 | 260030 | Чтение х |
011 | MUL 30 | 100021 | Умножение на х |
012 | MUL #2 | 410000 | Умножение на 2 |
013 | ADD #7 | 250050 | Прибавление 7 |
014 | WR 031 | 220032 | Запись в 31 ячейку |
015 | RD 031 | 210030 | Чтение из 31 ячейки |
019 | DIV 030 | 260033 | Деление на х |
020 | OUT | 02000 | Вывод х |
021 | HLT | --- | --- |
Лабораторная работа №5
[править]
Условие
[править]Максимальное отрицательное число
Код программы
[править]RD #40
WR 30
RD #10
WR 31
RD #0
WR 32
Ml: RD @30
SUB 32
JS 12
RD 32
WR 32
JMP 14
RD @30
WR 32
RD 30
ADD #1
WR 30
RD 31
SUB #1
WR 31
JNZ Ml
RD 32
OUT
HLT
Граф-схема
[править]Лабораторная работа№6
[править]Содержание отчета
1. Формулировка варианта задания.
2. Граф-схема алгоритма основной программы.
3. Граф-схема алгоритма подпрограммы.
4. Распределение памяти (размещение в ОЗУ переменных, программы и необходимых констант).
5. Тексты программы и подпрограммы.
6. Значения исходных данных и результата выполнения программы.
1. Составить и отладить программу учебной ЭВМ для нахождения максимального отрицательнеого числа.
Код программы
[править]RD #40
WR 30
RD #10
WR 31
RD #0
WR 32
Ml: RD @30
SUB 32
JS 12
RD 32
WR 32
JMP 14
RD @30
WR 32
RD 30
ADD #1
WR 30
RD 31
SUB #1
WR 31
JNZ Ml
RD 32
OUT
HLT
2.Граф-схема
[править]
3. Граф-схема алгоритма подпрограммы.
[править]
4. Текст подпрограммы.
[править]Ml: RD @30
SUB 32
JS 12
RD 32
WR 32
JMP 14
RD @30
WR 32
RD 30
ADD #1
WR 30
RD 31
SUB #1
WR 31
JNZ Ml
5. Значения исходных данных и результата выполнения программы
[править]Начиная с ячейки 40 по 43 присваиваем положительные значения чисел: 000001; 000002; 000003; 000004.
Ячейкам 44, 46 и 49 присвоим отрицательные значения чисел: 100010; 100001; 100009.
Ячейкам 45, 47 и 48 так же присвоим положительное значение: 000005; 000006; 000007.
При выводе результата программы OR = 100010.
Лабораторная работа №7
[править]Лабораторная работа №8
[править]
Вариант №1
Составить последовательность состояний кэш-памяти размером 4 ячейки при однократном выполнении программы.
Текст программы
[править]RD #12
WR 10
WR @10
ADD 12
WR R0
SUB 10
PUSH R0
Режимы кеш-памяти
[править]RD #12
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 000000 | 0 | 0 | 0 |
1 | 000 | 000000 | 0 | 0 | 0 |
2 | 000 | 000000 | 0 | 0 | 0 |
3 | 000 | 000000 | 0 | 0 | 0 |
WR10
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211012 | 1 | 1 | 0 |
1 | 000 | 000000 | 0 | 0 | 0 |
2 | 000 | 000000 | 0 | 0 | 0 |
3 | 000 | 000000 | 0 | 0 | 0 |
WR@10
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211012 | 1 | 1 | 0 |
1 | 001 | 220010 | 1 | 1 | 0 |
2 | 020 | 000012 | 1 | 1 | 0 |
3 | 000 | 000000 | 0 | 0 | 0 |
ADD 12
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211012 | 1 | 0 | 0 |
1 | 012 | 000012 | 1 | 1 | 0 |
2 | 010 | 000012 | 1 | 1 | 0 |
3 | 002 | 222010 | 1 | 0 | 0 |
WR R0
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211012 | 1 | 0 | 1 |
1 | 012 | 000012 | 1 | 1 | 1 |
2 | 010 | 000012 | 1 | 1 | 1 |
3 | 003 | 230012 | 1 | 1 | 1 |
SUB 010
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211012 | 1 | 0 | 1 |
1 | 012 | 000012 | 1 | 1 | 1 |
2 | 004 | 320000 | 1 | 1 | 1 |
3 | 003 | 230012 | 1 | 1 | 1 |
PUSH R0
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 005 | 240010 | 1 | 0 | 0 |
1 | 010 | 000012 | 1 | 1 | 0 |
2 | 004 | 320000 | 1 | 0 | 0 |
3 | 003 | 230012 | 1 | 0 | 0 |
Лабораторная работа №10: Моделирование работы внешних устройств: клавиатура.
[править]Ввод 2-х произвольных символов с клавиатуры:
[править]Ввод фамилии с контроллера клавиатуры:
[править]Коды соответствующие символам:
[править]Данный результат получен при записи программы в "программа" а вывод - в результате выполнения программы и заноса данный в ОП.
Лабораторная работа №11
[править]RD #11
OUT 11
RD #0
OUT 13
RD #213
OUT 10
RD #197
OUT 10
RD #203
OUT 10
RD #197
OUT 10
RD #204
OUT 10
RD #197
OUT 10
RD #205
OUT 10
RD #196
OUT 10
RD #200
OUT 10
RD #202
OUT 10
HLT
Вывод, объясняющий особенности работы дисплея.
[править]При работе с дисплеем учебной ЭВМ мы наблюдаем отображение информации находящейся в оперативной памяти. При вносе в ОП определенные данные, мы получим вывод этих данных на модель дисплея учебной ЭВМ. Каждое значение RD #... обозначает определенный символ, который выводится на дисплей учебной ЭВМ в виде букв, цифр или знаков. OUT задает значение, на какую строку выводить заданное значение.