Страницу Назад
Поискать другие аналоги этой работы
100 Разработка библиотеки mySimpleComputer. Оперативная память, регистр флагов, декодирование операций.ID: 173076Дата закачки: 16 Сентября 2016 Продавец: woorumu (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Форматы файлов: Microsoft Word Сдано в учебном заведении: СибГУТИ Описание: Лабораторная работа 2. Разработка библиотеки mySimpleComputer. Оперативная память, регистр флагов, декодирование операций. Прочитайте главу 4 практикума по курсу «Организация ЭВМ и систем». Изучите принципы работы разрядных операций в языке Си: как можно изменить значение указанного разряда целой переменной или получить его значение. Вспомните, как сохранять информацию в файл и считывать еѐ оттуда в бинарном виде. 2. Разработайте функции по взаимодействию с оперативной памятью, управлению регистром флагов и кодированию/декодированию команд: int sc_memoryInit () – инициализирует оперативную память Simple Computer, за- давая всем еѐ ячейкам нулевые значения. В качестве «оперативной памяти» использу- ется массив целых чисел, определенный статически в рамках библиотеки. Размер мас- сива равен 100 элементам. b. int sc_memorySet (int address, int value) – задает значение указанной ячейки памяти как value. Если адрес выходит за допустимые границы, то устанавлива- ется флаг «выход за границы памяти» и работа функции прекращается с ошибкой; c. int sc_memoryGet (int address, int * value) – возвращает значение указан- ной ячейки памяти в value. Если адрес выходит за допустимые границы, то устанавли- вается флаг «выход за границы памяти» и работа функции прекращается с ошибкой. Значение value в этом случае не изменяется. d. int sc_memorySave (char * filename) – сохраняет содержимое памяти в файл в бинарном виде (используя функцию write или fwrite); int sc_memoryLoad (char * filename) – загружает из указанного файла содер- жимое оперативной памяти (используя функцию read или fread); f. int sc_regInit (void) – инициализирует регистр флагов нулевым значением; g. int sc_regSet (int register, int value) – устанавливает значение указанно- го регистра флагов. Для номеров регистров флагов должны использоваться маски, за- даваемые макросами (#define). Если указан недопустимый номер регистра или некор- ректное значение, то функция завершается с ошибкой. h. int sc_regGet (int register, int * value) – возвращает значение указанного флага. Если указан недопустимый номер регистра, то функция завершается с ошибкой. i. int sc_commandEncode (int command, int operand, int * value) – кодиру- ет команду с указанным номером и операндом и помещает результат в value. Если ука- заны неправильные значения для команды или операнда, то функция завершается с ошибкой. В этом случае значение value не изменяется. j. int sc_commandDecode (int value, int * command, int * operand) – деко- дирует значение как команду Simple Computer. Если декодирование невозможно, то устанавливается флаг «ошибочная команда» и функция завершается с ошибкой. Комментарии: 2015 год Фульман Размер файла: 2,5 Кбайт Фаил: (.rar)
Скачано: 34 Сейчас качают: 1 Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Лабораторная №2 по дисциплине: Архитектура ЭВМЛабораторная работа 2. Разработка библиотеки mySimpleComputer. Оперативная память, регистр флагов, декодирование операций. Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / ЭВМ и периферийные устройства / Разработка библиотеки mySimpleComputer. Оперативная память, регистр флагов, декодирование операций.
Вход в аккаунт: