Вопросы для подготовке к защите лабораторных
Лабораторная работа #1
- Абсолютный и относительный путь
- Символьные и жесткие ссылки
- Перенаправление потоков
- Специальные символы и экранирование
- Права доступа, способы их изменения
- Вывод команды ls -l
- Системный справочник (команда man)
- Исполняемые скрипты (создание и способы запуска)
- Способы создания и заполнения файлов
- ...
Лабораторная работа #2
- Назначение и разрядность регистров в БЭВМ
- Какие операции выполняет АЛУ?
- Какие операции выполняются в коммутаторе?
- Как и где происходит формирование признаков результата?
- Форматы команд
- Прямой и дополнительный код
- Получение допкода для числа в произвольной СС
- Какое число больше: 10110001 или 11000010 в 8-битном знаковом представлении?
- Реализация вычитания/декремента в БЭВМ
- Выполнение пультовых операций
- Машинные циклы
- Как формируется бит переполнения?
Лабораторная работа #3
- Организация циклом и ветвлений в БЭВМ
- Выполнение команды LOOP/BEQ и др. команд ветвлений
- Формат команд перехода
- Виды адресации (абсолютная, косвенная, прямая загрузка операнда)
- Корректно ли работает программа при 0 элементов массива? Почему?
- Где ещё может располагаться массив?
- Арифметические и логические сдвиги (где выполняются, как реализованы, чем отличаются)
Лабораторная работа #4
- Что такое подпрограммы, зачем они нужны? В чем плюсы? От чего зависит выигрыш от использования подпрограммы?
- Способы передачи параметров в подпрограмму
- Что такое стек?
- Где находится стек в БЭВМ?
- Команды работы со стеком (PUSH и POP)
- Можно ли работать со стеком с помощью других команд? В чем отличие от PUSH и POP?
- Почему внутри подпрограммы мы не используем PUSH и POP? Почему в основной программе используем именно их?
- Комбинацией каких команд можно заменить RET?
- Возможна ли рекурсия в БЭВМ? Чем ограничена глубина рекурсии?
- Что такое реентерабельность? Является ли ваша программа реентерабельной? Почему?
- Насколько большую перемещаемую программу можно написать на БЭВМ?
- Рассказать выполнение команды LD #4 по тактам.
Дополнительные задания
- вычисление N-го члена арифметической прогрессии
- вычисление суммы первых N элементов арифметической прогресии (известны a1, an и N)
- поиск максимального по модулю числа в массиве (подпрограмма сравнивает два числа по модулю)
- подпрограмма, возвращающая максимальное из трёх чисел (передача параметров через память - операнды разместить под инструкцией CALL)
- подпрограмма деления нацело (возвращает результат деления и остаток от деления)
- посчитать сумму чисел от 1 до N (рекурсия)
- вычисление N-го члена арифметической прогрессии с использованием рекурсии
- подпрограмма умножения на заданное число
- подпрограмма для сложения 32-битных чисел
- подпрограмма сравнивает два числа по модулю и возвращает 1, если первое больше, 0 если числа равны и -1 если второе больше. Передача параметров под инструкцией CALL.
- подпрограмма, считающая среднее арифметическое для четырёх чисел.
- сортировка массива пузырьком (подпрограмма сравнивает два переданных ей числа)
Лабораторная работа #5
- Классификация ввода-вывода (программно-управляемый, прямой доступ к памяти).
- Синхронный и асинхронный обмен (сравнение, реализуем ли в БЭВМ)
- Обмен по прерыванию (общие принципы)
- Прямой доступ к памяти
- Принципы работы дешифратора
- Устройство контроллера ввода-вывода (по схеме)
- Сколько внешних устройств можно подключить в БЭВМ?
- Описать последовательность действий ВУ при асинхронном выводе
- Описать последовательность действий ЦП при асинхронном вводе
- О чём свидетельствует флаг готовности равный 0?
- В каком случае ВУ опрашивает свой флаг
- ...