IgorSanin
Добро пожаловать в Викиверситет!
правитьЗдравствуйте, и добро пожаловать в русскоязычную часть Викиверситета! Надеемся, Вы получите большое удовольствие от участия в проекте.
Постарайтесь вначале статьи обозначить цель Вашей работы. Укажите, является ли создаваемая Вами страница учебным курсом или исследовательской работой.
Если Вы хотите написать энциклопедическую статью, то для этого есть Википедия, см. Чем не является Викиверситет.
Ознакомьтесь, пожалуйста, с вики-разметкой и принципами размещения и именования статей.
Чтобы получать актуальную информацию о событиях, происходящих в Викиверситете, Вы можете установить шаблон {{Актуально}}, например, в самое начало своей страницы обсуждения.
Иллюстрации загружайте на Викисклад, предназначенный для хранения медиафайлов вики-проектов. Прочитайте, пожалуйста, брошюру об основах иллюстрирования статей в Википедии и работе на Викискладе. Загруженные файлы на Викисклад можно будет одинаково легко использовать в Википедии и в Викиверситете.
По всем вопросам смело обращайтесь на портал сообщества или к одному из администраторов.
При этом, пожалуйста, подписывайтесь на страницах обсуждения (но не в статьях Викиверситета), используя четыре идущих подряд знака тильды (~~~~). И ещё раз — добро пожаловать! :-) вы можете убрать данный шаблон с вашей страницы обсуждения по собственному желанию
-- 18:01, 19 мая 2011 (UTC)
Лабораторная работа №4
правитьВариант №4
Условие
править((X+3)^2)/x При 1<x<50
(X+3)^2 При -20<x<20
Блок схема
правитьКод программы
правитьIN
WR 30
SUB #50
JS 10
RD 030
ADD #3
WR 031
MUL 031
WR 031
JNS 18
RD 030
ADD #3
WR 032
MUL 032
WR 032
RD 032
DIV 030
WR 032
OUT
HLT
Размещение данных в ОЗУ
правитьАдрес | Команда | Код |
---|---|---|
000 | IN | 010000 |
001 | WR 30 | 220030 |
002 | SUB #50 | 241050 |
003 | JS 10 | 130010 |
004 | RD 030 | 210030 |
005 | ADD #3 | 231003 |
006 | WR 031 | 220031 |
007 | MUL 031 | 250031 |
008 | WR 031 | 220031 |
009 | JNS 18 | 140018 |
010 | RD 030 | 210030 |
011 | ADD #3 | 231003 |
012 | WR 032 | 220032 |
013 | MUL 032 | 250032 |
014 | WR 032 | 220032 |
015 | RD 032 | 210032 |
016 | DIV 030 | 260030 |
017 | WR 032 | 220032 |
018 | OUT | 020000 |
019 | HTL | 090000 |
Программа в форме таблицы
правитьАдрес | Команда |
---|---|
000 | IN |
001 | WR 30 |
002 | SUB #50 |
003 | JS 10 |
004 | RD 030 |
005 | ADD #3 |
006 | WR 031 |
007 | MUL 031 |
008 | WR 031 |
009 | JNS 18 |
010 | RD 030 |
011 | ADD #3 |
012 | WR 032 |
013 | MUL 032 |
014 | WR 032 |
015 | RD 032 |
016 | DIV 030 |
017 | WR 032 |
018 | OUT |
019 | HTL |
Последовательность состояния регистров ЭВМ
правитьАдрес | Команда | Код | Примечание |
---|---|---|---|
000 | IN | 010000 | Ввод Данных |
001 | WR 30 | 220030 | Запись в ячейку 30 |
002 | SUB #50 | 241050 | Сравнение с границей -(X-50) |
003 | JS 10 | 130010 | Переход по отрицательной разности |
004 | RD 030 | 210030 | Чтение ячейки 30 |
005 | ADD #3 | 231003 | Сложение (X+3) |
006 | WR 031 | 220031 | |
007 | MUL 031 | 250031 | Умножение (X+3)^2 |
008 | WR 031 | 220031 | |
009 | JNS 18 | 140018 | Переход если положительно |
010 | RD 030 | 210030 | |
011 | ADD #3 | 231003 | |
012 | WR 032 | 220032 | |
013 | MUL 032 | 250032 | |
014 | WR 032 | 220032 | |
015 | RD 032 | 210032 | |
016 | DIV 030 | 260030 | Деление ((X+3)^2) |
017 | WR 032 | 220032 | |
018 | OUT | 020000 | Вывод результата |
019 | HTL | 090000 | Стоп |
Лабораторная работа №5
правитьУсловие работы
правитьНайти произведение всех чисел
Код программы
правитьRD #40
WR 30
RD #10
WR 31
RD #1
WR 32
Ml: RD 32
MUL @30
WR 32
RD 30
ADD #1
WR 30
RD 31
SUB #1
WR 31
JNZ MI: RD 32
RD 32
OUT
HLT
Графическая схема программы
править
Распределение памяти
правитьЯчейки: 1 - Команды управления - 000-010 2 - Постоянные и параметры - 030-032 3 - Элементы массива - 040-049
Лабораторная работа №7
правитьУсловие работы
правитьЗаписать последовательность микрокоманд для следующих команд модели учебной ЭВМ:
IN
WR 8
DIV #4
WR @8
JMP 002
Микрокомандный уровень
правитьТаблица к лабораторной №7
править
Лабораторная №8
правитьУсловие работы
правитьПроверить работу различных алгоритмов замещения при различных режимах записи.
В шаговом режиме выполнить программу, фиксируя после каждого шага состояние кэш-памяти.
Код программы
править
RD #19
SUB #10
WR9
ADD #3
WR @9
CALL 006
POP R4
Параметры КЭШ памяти
правитьРежимы КЭШ памяти
правитьRD #19
№ | Тег | Данные | 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 |
SUB #10
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211019 | 1 | 1 | 0 |
1 | 004 | 222009 | 0 | 0 | 0 |
2 | 005 | 190006 | 0 | 0 | 0 |
3 | 999 | 000006 | 0 | 1 | 0 |
WR9
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211019 | 1 | 1 | 0 |
1 | 001 | 241010 | 1 | 1 | 0 |
2 | 005 | 190006 | 0 | 0 | 0 |
3 | 999 | 000006 | 0 | 1 | 0 |
ADD #3
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211019 | 1 | 0 | 0 |
1 | 001 | 241010 | 1 | 0 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 009 | 000009 | 1 | 1 | 0 |
WR @9
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 003 | 231003 | 1 | 1 | 0 |
1 | 001 | 241010 | 1 | 0 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 009 | 000009 | 1 | 1 | 0 |
CALL 006
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 003 | 231003 | 1 | 1 | 0 |
1 | 004 | 220009 | 1 | 1 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 009 | 000012 | 1 | 1 | 0 |
POP R4
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 003 | 231003 | 1 | 0 | 0 |
1 | 004 | 220009 | 1 | 0 | 0 |
2 | 005 | 190006 | 1 | 0 | 0 |
3 | 999 | 000009 | 1 | 1 | 0 |
Лабораторная работа №9
правитьУсловие работы
правитьПри помощи КЕШ памяти в учебной ЭВМ вычислить значение коэффициента эффективности К и записать в таблицу.
Код программы
править
IN
WR 30
SUB #50
JS 10
RD 030
ADD #3
WR 031
MUL 031
WR 031
JNS 18
RD 030
ADD #3
WR 032
MUL 032
WR 032
RD 032
DIV 030
WR 032
OUT
HLT
Используем этот код программы для просмотра состояния КЕШ памяти в учебной ЭВМ.
Таблица
правитьПример статистики КЕШ памяти
Параметры КЕШ памяти( один из примеров)
Лабораторная работа №10
правитьУсловие
правитьЗаписать и получить свое имя на дисплее
Код программы
править
RD #10
OUT 1
RD #103
OUT 1
M1: IN 2
JZ M1
IN 0
JMP M1
Программа в форме таблицы
править000 | RD #10 |
001 | OUT 1 |
002 | RD #103 |
003 | OUT 1 |
004 | M1: IN 2 |
005 | JZ M1 |
006 | IN 0 |
007 | JMP M1 |
Ввод символов с клавиатуры
правитьВвод с клавиатуры
Ввод одного символа
Ввод двух символов
Фиксация кодов в регистре DR
правитьПамять учебной ЭВМ
Программа и коды, СООТВЕТСТВУЮЩИЕ командам программы.
Лабораторная работа №11
правитьУсловие работы
правитьИзучить способов организации взаимодействия процессора и внешних устройств в составе ЭВМ.
Код программы
править
RD #11
OUT 11
RD #0
OUT 13
RD #200
OUT 10
RD #227
OUT 10
RD #238
OUT 10
RD #240
OUT 10
RD #252
OUT 10
HLT
Отображение на дисплее
править
В данной программе команда RD #.. Обозначает определенный символ. Эти символы выводятся на учебной модели ЭВМ в виде различных букв, знаков, цифр. Каждой команде соответствует только один определенный символ.
Команда OUT предназначена для перехода значения на ту строчку, которая указывается в программе.
Можно в программе писать различные тексты, вводя команды в учебную ЭВМ.
Вот некоторые примеры команд:
RD #201 - Й
RD #222 - Ю