Обсуждение участника:NersesyanE
Добавить темуДобро пожаловать в Викиверситет!
[править]Здравствуйте, и добро пожаловать в русскоязычную часть Викиверситета! Надеемся, Вы получите большое удовольствие от участия в проекте.
Постарайтесь вначале статьи обозначить цель Вашей работы. Укажите, является ли создаваемая Вами страница учебным курсом или исследовательской работой.
Если Вы хотите написать энциклопедическую статью, то для этого есть Википедия, см. Чем не является Викиверситет.
Ознакомьтесь, пожалуйста, с вики-разметкой и принципами размещения и именования статей.
Чтобы получать актуальную информацию о событиях, происходящих в Викиверситете, Вы можете установить шаблон {{Актуально}}, например, в самое начало своей страницы обсуждения.
Иллюстрации загружайте на Викисклад, предназначенный для хранения медиафайлов вики-проектов. Прочитайте, пожалуйста, брошюру об основах иллюстрирования статей в Википедии и работе на Викискладе. Загруженные файлы на Викисклад можно будет одинаково легко использовать в Википедии и в Викиверситете.
По всем вопросам смело обращайтесь на портал сообщества или к одному из администраторов.
При этом, пожалуйста, подписывайтесь на страницах обсуждения (но не в статьях Викиверситета), используя четыре идущих подряд знака тильды (~~~~). И ещё раз — добро пожаловать! :-) вы можете убрать данный шаблон с вашей страницы обсуждения по собственному желанию
-- 15:26, 26 мая 2011 (UTC)
Лабораторная работа №4
[править]Вариант №4
Условие
[править]8100/x^2 ,при 90>=x>=30
(2x^2+7)/x , при 1<=x<30
Блок схема
[править]Код программы
[править]IN
WR 31
SUB #30
JS 10
WR #8100
RD 030
DIV x^2
WR 30
JNS 18
RD 030
MUL #2
WR 030
RD 030
MUL #2
WR 030
RD 030
ADD #7
WR 030
RD 030
DIV 031
OUT
HTL
Размещение данных в ОЗУ
[править]Адрес | Команда | Код |
---|---|---|
000 | IN | 010000 |
001 | WR 031 | 220031 |
002 | SUB #030 | 241030 |
003 | JS 10 | 130010 |
004 | ADI 008100 | 43100 008100 |
005 | WR 033 | 220033 |
006 | RD 033 | 210033 |
007 | DIV #002 | 261002 |
008 | WR 030 | 220030 |
009 | JNS 18 | 140018 |
010 | RD 030 | 210030 |
011 | MUL #002 | 251002 |
012 | WR 030 | 220030 |
013 | RD 030 | 210030 |
014 | MUL #002 | 251002 |
015 | WR 030 | 220030 |
016 | RD 030 | 210030 |
017 | ADD #007 | 231007 |
018 | WR 030 | 220030 |
019 | RD 030 | 210030 |
020 | DIV 031 | 260031 |
021 | OUT | 020000 |
022 | HLT | 090000 |
Программа в форме таблицы
[править]Адрес | Команда |
---|---|
000 | IN |
001 | WR 031 |
002 | SUB #030 |
003 | JS 10 |
004 | ADI 008100 |
005 | WR 033 |
006 | RD 033 |
007 | DIV #002 |
008 | WR 030 |
009 | JNS 18 |
010 | RD 030 |
011 | MUL #002 |
012 | WR 030 |
013 | RD 030 |
014 | MUL #002 |
015 | WR 030 |
016 | RD 030 |
017 | ADD #007 |
018 | WR 030 |
019 | RD 030 |
020 | DIV 031 |
021 | OUT |
022 | HLT |
Последовательность состояния регистров ЭВМ
[править]Адрес | Команда | Код | Примечание |
---|---|---|---|
000 | IN | 010000 | Ввод Данных |
001 | WR 031 | 220031 | Запись в ячейку 31 |
002 | SUB #030 | 241030 | Сравнение с границей -(X-30) |
003 | JS 10 | 130010 | Переход по отрицательной разности |
004 | ADI 008100 | 43100 008100 | Запись числа 8100 |
005 | WR 033 | 220033 | |
006 | RD 033 | 210033 | |
007 | DIV #002 | 261002 | Деление (8100/x^2) |
008 | WR 030 | 220030 | |
009 | JNS 18 | 140018 | Переход если положительно |
010 | RD 030 | 210030 | |
011 | MUL #002 | 251002 | Умножение x^2 |
012 | WR 030 | 220030 | |
013 | RD 030 | 210030 | |
014 | MUL #002 | 251002 | |
015 | WR 030 | 220030 | |
016 | RD 030 | 210030 | |
017 | ADD #007 | 231007 | |
018 | WR 030 | 220030 | |
019 | RD 030 | 210030 | |
020 | DIV 031 | 260031 | |
021 | OUT | 020000 | Вывод результата |
022 | HLT | 090000 | Стоп |
Лабораторная работа №11
[править]Условие
[править]Вывести собственное имя на дисплей учебной ЭВМ.
Текст программы
[править]RD #11
OUT 11
RD #0
OUT 13
RD #221
OUT 10
RD #228
OUT 10
RD #194
OUT 10
RD #232
OUT 10
RD #237
OUT 10
HLT
Ввод имени на дисплее
[править]Лабораторная работа №5
[править]Вариант №3
Условие
[править]Найти произведение всех чисел
Блок схема
[править]<img src="http://s48.radikal.ru/i121/1105/cd/07eba173f035.png"/>
Код программы
[править]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
Лабораторная работа №6
[править]Условие работы
[править]Разработать программу учебной ЭВМ для нахождения максимального отрицательного числа при вводе различных данных. Можно выбирать произвольные данные....
Код программы
[править]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
Код подпрограммы
[править]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
Работа программы
[править]Программа компилируется.
Далее нужно ввести значения переменных, которые мы начинаем вводить с 40 ячейки, как отрицательные, так и положительные.
Мы должны заполнить ячейки с 40 по 48.
Далее запускаем программу и нам будет выдан ответ самого максимально отрицательного числа.
Данная программа универсальна, то есть подходит практически для всех положительных и отрицательных целых чисел.
Например, при вводе значений 1,2,3,4,5,6,-7,8, программа выдаст в OR=100007
Лабораторная работа 7
[править]Условие лабораторной
[править]Запишите последовательность микрокоманд для следующих команд модели учебной ЭВМ:
IN
ADD #12
WR 10
WR @10
JS 004
Таблица
[править]Подробная таблица для Лабораторной 7
Данная таблица отражает все переменные микрокомандного уровня.
Примеры Микрокомандного уровня
[править]Программа в учебной ЭВМ Файл:Lab71.png
Включение Микрокомандного уровня
Микрокомандный уровень.
Лабораторная работа 8
[править]Условие работы
[править]Вариант №3
RD #16; SUB #5; WR 9; WR @9; WR r3; PUSH R3; POP R4
Код программы
[править]RD #16
SUB #5
WR 9
WR @9
WR r3
PUSH R3
POP R4
Параметры КЭШ памяти
[править]Должен быть включен режим КЭШ-памяти
Можно выбрать различные параметры КЭШ-памяти
Режимы КЭШ памяти
[править]RD #16
№ | Тег | Данные | 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 #5
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 1 | 0 |
1 | 000 | 000000 | 0 | 0 | 0 |
2 | 000 | 000000 | 0 | 0 | 0 |
3 | 000 | 000000 | 0 | 0 | 0 |
WR 9
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 1 | 0 |
1 | 001 | 241005 | 1 | 1 | 0 |
2 | 000 | 000000 | 0 | 0 | 0 |
3 | 000 | 000000 | 0 | 0 | 0 |
WR @9
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 1 | 0 |
1 | 001 | 241005 | 1 | 1 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 000 | 000000 | 1 | 0 | 0 |
WR R3
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 0 | 0 |
1 | 001 | 000011 | 1 | 1 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 000 | 000011 | 1 | 1 | 0 |
PUSH R3
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 0 | 0 |
1 | 001 | 320003 | 1 | 1 | 0 |
2 | 002 | 220009 | 1 | 0 | 0 |
3 | 000 | 000011 | 1 | 1 | 0 |
POP R4
№ | Тег | Данные | Z | U | W |
---|---|---|---|---|---|
0 | 000 | 211016 | 1 | 0 | 0 |
1 | 001 | 000011 | 1 | 1 | 0 |
2 | 002 | 060003 | 1 | 1 | 0 |
3 | 000 | 000011 | 1 | 1 | 0 |
Лабораторная работа №9
[править]Условие работы №9
[править]Вычислить значение К эффективности при помощи КЭШ памяти
Код программы
[править]
IN
WR 31
SUB #30
JS 10
WR #0081
RD 030
DIV 31
WR 30
JNS 18
RD 030
MUL #2
WR 030
RD 030
MUL #2
WR 030
RD 030
ADD #7
WR 030
RD 030
DIV 031
OUT
HLT
Мы будем использовать данный код программы для вычисления коэффециента К
Таблица №9
[править]
КЭШ память
[править]Режим КЕШ памяти должен быть включен
Лабораторная работа №10
[править]Условие работы
[править]Рассмотреть посимвольный ввод с клавиатуры
Код программы
[править]
RD #10
OUT 1
RD #103
OUT 1
M1: IN 2
JZ M1
IN 0
JMP M1
Ввод символов с клавиатуры
[править]Нужно подключить контроллер клавиатуры