0 / 0 / 0
Регистрация: 05.09.2014
Сообщений: 38

Модель учебной ЭВМ Жмакин

07.11.2014, 01:57. Показов 19340. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание:Составить и отладить программу учебной ЭВМ для решения следующей задачи. Три массива в памяти заданные начальными адресами и длинами . Вычислить и вывести на устройство вывода среднее арифметическое параметров этих массивов . Параметры массивов выбрать произвольно .
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.11.2014, 01:57
Ответы с готовыми решениями:

Вычислить значение конечной суммы ряда (модель Учебной ЭВМ)
ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ Вычислить значение конечной суммы ряда X. Вычисленное значение поместить в...

Найти номер минимального числа (учебная модель ЭВМ Жмакина)
Написать программу определения номера минимального числа элементов массива чисел С1, С2,..., Сn. сделать нужно в учебной модели ЭВМ...

Найти номер первого положительного числа. Модель учебной ЭВМ Жмакина
Написать программу определения номера первого положительного числа элементов массива чисел С1, С2,..., Сn. сделать нужно в учебной...

11
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
13.11.2015, 10:12
Поднимаю темку. Собственно добрался до работы №6 и встал со скрипом ( Вообще не понимаю каким образом заставить программно меняться CR ВУ. В книге, как назло, ни одного нормального примера с описанием того, что он делает, не приведено, а самостоятельно я опробовал некоторые свои мысли, но ни одна не сработала как надо. Может кто-нибудь хотя бы на примере работы с клавиатурой подсобить.

К сообщению прикладываю модель и описание из Жмакина.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16371 / 7683 / 1080
Регистрация: 11.11.2010
Сообщений: 13,757
14.11.2015, 12:20
D-Tritus,
вот тут посмотри https://www.cyberforum.ru/asse... 64118.html
0
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
14.11.2015, 19:09
Mikl___, спасибо за ссыль, но это не то ( Я уже в общем-то вышел на знающего человека - он мне материал подходящий подкинул, буду изучать.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16371 / 7683 / 1080
Регистрация: 11.11.2010
Сообщений: 13,757
15.11.2015, 10:51
Цитата Сообщение от D-Tritus Посмотреть сообщение
Я уже в общем-то вышел на знающего человека - он мне материал подходящий подкинул
D-Tritus,
так же как ты "вышел на эту темку" следом за тобой еще кто-либо поднимет тему "модель ЭВМ Жмакина" поэтому
Отправляйте краткое описание решения
После того, как ваша проблема решена, пошлите сообщение всем, кто вам помог, дайте им знать, чем всё закончилось, и поблагодарите ещё раз за помощь. Если проблема вызвала общий интерес в списке рассылки или дискуссионной группе, имеет смысл подобное сообщение отправить и туда.

Оптимальным решение будет ответить в нити обсуждения, начатой с исходного вопроса, добавив к теме сообщения пометку «FIXED», «RESOLVED», «РЕШЕНО» или другой не менее очевидный признак решения. В списках рассылки с большим количеством сообщений, потенциальный отвечающий при взгляде на нить обсуждения «Проблема Х», завершающуюся сообщением «Проблема Х - РЕШЕНИЕ» понимает, что ему не нужно тратить своё время даже на чтение сообщений (если он лично не считает Проблему Х интересной), и поэтому может потратить своё время на решение другой проблемы.

Такое сообщение не обязательно должно быть длинным и подробным. Простое: «Привет! Проблема была связана с разрывом в сетевом кабеле! Спасибо всем. Билл», - уже лучше, чем ничего. Фактически, краткое и вежливое резюме лучше, чем длинная диссертация, если только решение не затрагивает серьёзные технические аспекты. Напишите, какие действия позволили решить проблему, но всю последовательность поиска решения повторно описывать не надо.

Для достаточно серьёзных проблем можно послать резюме с историей поиска причин. Опишите окончательную постановку проблемы. Опишите, каким оказалось решение, и укажите тупиковые пути, которых стоит избегать. Назовите всех, кто помог вам: так вы найдёте себе друзей.

Помимо проявления вежливости и информирования, такого рода резюмирующее сообщение поможет другим при поиске в архиве списка рассылки/дискуссионной группы/форума точно узнать, какое решение помогло вам, и, значит, может помочь и им.

Последнее, но немаловажное, — такого рода сообщение помогает всем участвовавшим в обсуждении получить чувство удовлетворения от того факта, что проблема закрыта. Если вы сами не технический специалист и не хакер, просто поверьте нам, что это чувство очень важно для гуру и экспертов, к которым вы обращались за помощью. Описания проблем, так в итоге и не решённых — это сплошное разочарование, хакеры жаждут увидеть их решёнными. Хорошая карма, возникающая, когда вы удовлетворяете эту жажду, очень поможет вам при составлении вопроса в следующий раз.

Подумайте, как вы можете предотвратить возникновение такой проблемы у других пользователей в будущем. Спросите себя, поможет ли изменение документации или списка ЧаВО, и если да — пошлите соответствующее изменение тем, кто поддерживает эти документы.
0
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
15.11.2015, 11:02
Mikl___, хорошо, добавим решение немного позднее
1
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
19.11.2015, 12:53
Эх, жалко нельзя прикреплять файлы - прицепил бы сразу отчеты до 6-ой работы включительно, переоформлять в пост слишком утомительно. Вроде, тег кода подобрал корректно.
Ну ладно, как и обещал чуть выше - 6-ая работа, 3-ий вариант. Задача - нужно последовательно вывести 3 сообщения на дисплей, при этом первое сообщение выводится сразу, а два последующих с задержкой до 15 и до 20с перед выводом. До запуска основного кода, естественно, необходимо подключить дисплей и таймеры в ВУ.

Итак:
код без использования прерывания
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// Очищаем дисплей
CALL M 
 
// Выводим первое сообщение (Fi) [в RD десятичные коды символов по ASCII]
RD #70 
OUT 10
RD #105
OUT 10
 
// Обнуляем первый таймер на всякий
RD #0
OUT 21
 
// Задаем ему делитель 5 и запускаем
RDI 5001
OUT 22
 
// Ждем некоторое время (при делителе 5 по таймеру 200 отсчетов - как раз ~15с)
M1: IN 21
SUB #200
JS M1
 
// Останавливаем таймер (это необязательно)
RDI 5000
OUT 22
 
// Очищаем дисплей от первого сообщения
CALL M
 
// Выдаем второе сообщение (Se)
RD #83
OUT 10
RD #101
OUT 10
 
// Обнуляем таймер
RD #0
OUT 21
 
// Запускаем его и ждем 250 отсчетов
RDI 5001
OUT 22
M2: IN 21
SUB #250
JS M2
 
// Останавливаем таймер
RDI 5000
OUT 22
 
// Очищаем дисплей от второго сообщения
CALL M
 
// Выводим третье сообщение (Th)
RD #84
OUT 10
RD #104
OUT 10
 
// Прекращаем работу
HLT
 
// Процедура очистки дисплея
// Вначале делаем сброс видеопамяти, сброс флагов E/A/Err  
M: RD #101
OUT 11
RD #102
OUT 11
// Разрешаем редактирование видеопамяти и включаем автоинкремент адреса видеоячейки
RD #011
OUT 11
RET


Для кода с прерыванием я решил использовать его для возврата к началу программы (аля JMP), потому что не смог корректно вкрутить подпрограмму непосредственно в прерывание от таймера
код с использованием прерывания

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// начало обработки прерывания
EI
// Очищаем дисплей и выводим первое сообщение
CALL M
RD #70
OUT 10
RD #105
OUT 10
 
// Счетчик устанавливаем максимально близко к порогу переполнения (на 200 единиц меньше)  
RDI 99799
OUT 21
// Запускаем
RDI 5001
OUT 22
// Ждем переполнения
M1: IN 21
JNZ M1
 
// Очищаем дисплей и выводим второе сообщение
CALL M
RD #83
OUT 10
RD #101
OUT 10
 
// Опять устанавливаем счетчик максимально близко к переполнению (на 250 единиц меньше) 
RDI 99749
OUT 21
// Запускаем
RDI 5001
OUT 22
// Ждем переполнения
M2: IN 21
JNZ M2
 
// Очищаем дисплей и выводим третье сообщение
CALL M
RD #84
OUT 10
RD #104
OUT 10
 
// Короткий таймер для того, чтобы первое сообщение после возврата к не затирало третье 
RDI 99979
OUT 21
// Включаем таймер с обработкой прерывания при переполнении 
RDI 5011
OUT 22
M3: IN 21
JNZ M3
 
// Конец обработки прерывания
IRET
 
M: RD #101
OUT 11
RD #102
OUT 11
RD #011
OUT 11
RET
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16371 / 7683 / 1080
Регистрация: 11.11.2010
Сообщений: 13,757
19.11.2015, 13:17
Цитата Сообщение от D-Tritus Посмотреть сообщение
Эх, жалко нельзя прикреплять файлы
Почему нельзя? При наборе ответа нажми на кнопку "Расширенный режим", нажми на "скрепку" и прикрепляй файлы, одновременно можно прикрепить пять зазипованных файлов, каждый объемом до 10 Мбайт
1
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
19.11.2015, 13:38
Mikl___, спасиб за ответ - запамятовал, давненько не обращался к форуме )

Ну что-ж, держите отчеты - авось, пригодятся
Итак, со 2-ой по 6-ую работы. 2-ая - 5-ая - вариант 13. 6-ая - вариант 3. DOCX-файлы от 2010 Word-а + отдельно код в текстовом файле для модели + есть ответы на контрольные вопросы местами.
Вложения
Тип файла: zip Jmakin_IBM_2-6.zip (458.7 Кб, 715 просмотров)
3
0 / 0 / 0
Регистрация: 23.04.2016
Сообщений: 1
23.04.2016, 15:45
D-Tritus, приветствую, не подскажешь как 7 и 8 работу делать? Буду очень благодарен
Текст задания
http://www.studfiles. ru/preview/3991754/page:3/
Сюда не охота копировать текст
0
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
25.04.2016, 12:30
Dimoks24, а какие сложности - в принципе, самые простые работы из всех (на уровне 1-ой). Ну ладно - держи примеры отчетов, которые оформил по результатам выполнения, надеюсь помогут =)
Вложения
Тип файла: zip 7_8_IBM.zip (629.1 Кб, 491 просмотров)
2
0 / 0 / 0
Регистрация: 14.05.2016
Сообщений: 26
21.03.2017, 23:36
На лабораторную работу №1 из 2 издания есть решения? Необходима помощь.
Лабораторная работа №1 Разработка алгоритма и микропрограммы арифметической операции.

Здесь представлен рабочий код на сложение и всё выполнено в прямом коде и результат тоже в прямом коде.
Кликните здесь для просмотра всего текста
y0, y2 # Ввод первого слагаемого A
y1, y3 # Ввод первого слагаемого B
y4, y6, y13, y18; x2,0,L1
y4, y6, y8, y18, y24; x2, 0, END
L2: y4, y32, y18
L3: y26, y2
y4, y32, y17, y24
y28;1, 0, END
L1: y4, y6, y9, y18, y24; x2, 0, L2
y4, y6, y10, y18, y24
y6, y12, y18; 1, 0, L3
END: y21


Необходимо изменить на
Тип операции: сложение
Код операнда 1: прямой код
Код операнда 2: прямой код
Код выполнения: обратный код
Код результата: дополнительный код

Во 2 издании 1 лабораторная совершенно отличается от 1 издания.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.03.2017, 23:36
Помогаю со студенческими работами здесь

учебная модель Эвм. АССЕМБЛЕР
как вбить число...ну например мне нужно вычислить 1800/х

Организация бегущей строки (в системе команд учебной ЭВМ)
Помогите, пожалуйста, написать микропрограмму в системе команд учебной ЭВМ для организации бегущей строки на основе 8-разрядного внешнего...

Модель работы ЭВМ
Вот задание: ЭВМ обслуживает три терминала по круговому циклическому алгоритму, предоставляя каждому терминалу 30 с. Если в течение...

Модель АСУ с двумя ЭВМ
Для обеспечения надежности АСУ ТП в ней используется две ЭВМ. Первая ЭВМ выполняет обработку данных о технологическом процессе и выработку...

Модель вычислительной лаборатории с 3 ЭВМ
Текст задачи: В вычислительной лаборатории (ВЛ) имеются три ЭВМ. Задания на обработку поступают с интервалом 20±5 мин в пункт приема....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru