Контрольные врпросы. Контрольные вопросы к 1-2 лабам. Контрольные вопросы к лабораторной 1 оргэвм
Скачать 20.23 Kb.
|
Контрольные вопросы к лабораторной №1 ОРГЭВМ 1. В каком коде хранятся целые числа со знаком? Для представления знаковых целых чисел используются три способа: 1) прямой код; 2) обратный код; 3) дополнительный код. Все три способа используют самый левый (старший) разряд битового набора для кодирования знака числа: “плюс” кодируется нулем, а “минус” - единицей. Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково —цифровая часть содержит двоичную запись числа, в знаковом разряде содержится 0. Прямой код отрицательных чисел В знаковый разряд помещается цифра 1, а в разряды цифровой части числа - двоичный код его абсолютной величины. Обратный код отрицательных чисел Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы - нулями. Дополнительный код отрицательных чисел Получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. Заметим, что ноль имеет два представления в прямом и обратном коде, а в дополнительном коде представление нуля единственно. Дополнительный код - наиболее распространённый способ представления отрицательных целых чисел в компьютерах. Он позволяет заменить операцию вычитания на операцию сложения и сделать операции сложения и вычитания одинаковыми для знаковых и беззнаковых чисел, чем упрощает архитектуру ЭВМ. 2. Чем отличаются процессы сдвига влево и вправо для чисел со знаком и беззнаковых? Беззнаковый: Логический сдвиг Сдвиг, при котором уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита записывается бит 0. Со знаком: Арифметический сдвиг При этом сдвиге слово рассматривается не просто как группа битов, а как целое число в дополнительном коде. При сдвиге влево ведёт себя как логический сдвиг, при сдвиге вправо уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита устанавливается бит, соответствующий знаку. 3. Как представляется корректный двоичный код числа типа float (double, long double), имеющего в десятичном виде наименьшее положительное значение, отличное от нуля? Денормализованные: float: 0 00000000 00000000000000000000001 (знак, экспонента, мантисса) double: 0 00000000000 0000000000000000000000000000000000000000000000000001 (знак, экспонента, мантисса) long double: 0 000000000000000 0 000000000000000000000000000000000000000000000000000000000000001 (знак, экспонента, целая часть, мантисса) Нормализованные: float: 0 00000001 00000000000000000000000 (знак, экспонента, мантисса) double: 0 00000000001 0000000000000000000000000000000000000000000000000000 (знак, экспонента, мантисса) long double: 0 000000000000001 1 000000000000000000000000000000000000000000000000000000000000000 (знак, экспонента, целая часть, мантисса) 4. Как выглядит десятичный код числа типа float (double, long double), имеющего наименьшее положительное значение, отличное от нуля? Денормализованные: float: 1.401 * 10^-45 double: 4.941 *10^-324 long double: 3.645 * 10^-4951 Нормализованные: float: 1.175 * 10^-38 double: 2.225 * 10^-308 long double: 3.362 *10^-4932 5. В каком порядке следует выполнять действия для получения дополнительного кода двоичного целого числа из прямого кода? 1) Инвертирование всех битов числа (прямой -> обратный); 2) Прибавление 1 к обратному коду (обратный -> дополнительный). 6. Чем отличается циклический сдвиг двоичного кода от логического сдвига? Циклический сдвиг При этом сдвиге уходящий бит появляется на месте появившегося свободного на другом конце числа. Логический сдвиг Сдвиг, при котором уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита записывается бит 0. 7. Чем отличается логический сдвиг двоичного кода от арифметического сдвига? Логический сдвиг Сдвиг, при котором уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита записывается бит 0. Арифметический сдвиг При этом сдвиге слово рассматривается не просто как группа битов, а как целое число в дополнительном коде. При сдвиге влево ведёт себя как логический сдвиг, при сдвиге вправо уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита устанавливается бит, соответствующий знаку. 8. Как изменяется значение числа при арифметическом сдвиге на 1 двоичный разряд влево? Увеличится в 2 раза. 9. Как изменяется значение числа при арифметическом сдвиге на 1 двоичный разряд вправо? Уменьшится в 2 раза (с округлением в меньшую сторону). 10.В каком порядке следует выполнять действия для получения прямого кода двоичного целого числа из дополнительного кода? 1) Вычитание 1 из дополнительного кода (дополнительный -> обратный); 2) Инвертирование всех битов числа (обратный -> прямой). Лаба 2: 1. Что входит в понятие "видеосистема"? Видеосистема компьютера - совокупность трех компонентов: монитора, видеоадаптера и драйверов видеосистемы. Видеоадаптер посылает в монитор сигналы управления яркостью лучей и синхросигналы строчной и кадровой развёрток. Монитор преобразует эти сигналы в зрительные образы. А программные средства обрабатывают видеоизображения — выполняют кодирование и декодирование сигналов, координатные преобразования, сжатие изображений и др. 2. Какие типы видеосистем вы знаете? В ПЭВМ применяются три основных типа построения видеосистемы: 1) ее электронные схемы без монитора входят в состав системного блока ПЭВМ и в качестве экранного ОЗУ используют основную память ПЭВМ; 2) ее электронные схемы без монитора входят в состав системного блока ПЭВМ и имеют отдельное экранное ОЗУ; 3) все ее электронные схемы и монитор выполняются в виде отдельного устройства, связанного с ПЭВМ стандартным интерфейсом. 3. Назовите основные характеристики видеосистем? определение типа и характеристик видеоадаптера и монитора, задание формы курсора и его позиции на экране, выбор режима, видеостраницы и палитры. 4. Как влияет размер видеопамяти на характеристики системы? Видеопамять — это электронное энергозависимое запоминающее устройство. Глубина цвета, а значит, количество цветов в палитре компьютера, зависит от размера видеопамяти. 5. Зачем нужен видеоадаптер? Видеоадаптер является важнейшим элементом видеосистемы, поскольку определяет следующие ее характеристики: -Максимальное разрешение и частоты разверток (также зависит от возможностей монитора); -Максимальное количество отображаемых цветов и оттенков (палитра); -Скорость обработки и передачи видеоданных. В самом общем виде видеоадаптер состоит из двух основных частей: контроллера и видеопамяти (видеобуфера). Помимо этих обязательных узлов, наиболее совершенные видеоадаптеры имеют в своем составе ряд дополнительных узлов, например, специализированные контроллеры быстрой манипуляции содержимым видеобуфера (так называемые контроллеры графики). Основное назначение видеобуфера - хранение образа информации экрана. Видеоадаптер 25 и более раз в секунду формирует изображение на экране. Так как человеческий глаз не способен уловить такое быстрое мелькание кадров, создается иллюзия неподвижного изображения на экране монитора. Изображение на экране строится из небольших точек - так называемых пикселов (pixel – Picture ELement). Число пикселов в строке и число самих строк различно для разных типов видеоадаптеров. 6. Почему различают текстовый и графический режимы работы видеосистемы? Если видеоадаптер включен в текстовый режим, он рассматривает экран как совокупность так называемых текселов (texel - Text Element). Каждому знакоместу экрана (текселу) в текстовом режиме соответствуют два байта памяти видеобуфера. Байт по четному адресу хранит ASCII-код символа, а следующий за ним байт по нечетному адресу кодирует особенности отображения символа на экране: цвет пикселов, из которых формируется очертание символа (Foreground Color), цвет всех остальных пикселов знакоместа или цвет фона символа (Background Color), мерцание символа и необходимость повышения яркости символа при отображении. Видеоадаптер при работе в текстовом режиме периодически считывает содержимое ячеек видеобуфера и по коду символа и байту атрибута формирует пикселы, образующие в совокупности очертание символа и его фон. Экран в графическом режиме представляет собой сразу матрицу пикселов. 7. Назовите основные характеристики текстового режима, чем они обусловлены? Видеопамять адаптера при работе в текстовых режимах доступна непосредственно из программы. Это значит, что любая ячейка видеобуфера может быть прочитана программой так же, как и обычная ячейка оперативной памяти. И как в обычную ячейку памяти, в видеобуфер возможна запись значений из программы. Видеоадаптер при работе в текстовом режиме периодически считывает содержимое ячеек видеобуфера и по коду символа и байту атрибута формирует пикселы, образующие в совокупности очертание символа и его фон. 8. Что называется окном? Зачем нужны окна? Окно — графически выделенная часть экрана, принадлежащая какому-либо объекту, с которым работает пользователь. 9. Можно ли на одном экране организовать несколько окон? 10.Какие функции инициализации текстового режима вы знаете? Установку параметров активного текстового окна выполняет функция window(int , int ,int , int );. Она описывает активное текстовое окно: первая пара аргументов задает соответственно номера столбца и строки левого верхнего угла, вторая пара - правого нижнего угла. Строки и столбцы нумеруются, начиная от 1. Функция insline() вставляет пустую строку в текущей позиции курсора со сдвигом всех остальных строк окна на одну строку вниз. При этом самая нижняя строка текста окна теряется. Функция cprintf( const char *format,...) выполняет вывод информации с преобразованием по заданной форматной строке, на которую указывает format Функция cputs( char *str) выводит строку символов в текстовое окно, начиная с текущей позиции курсора. На начало выводимой ASCII-строки указывает указатель str. Функция putch(int ch) выводит символ в текущей позиции текстового окна экрана. Функция puttext(int left, int top, int right, int bottom,void *source) выводит на экран текстовое окно, заданное координатами левого верхнего (left, top) и правого нижнего (right, bottom) углов. Символы и атрибуты располагаются в буфере, адрес начала которого задает указатель source. Другими словами, функция "открывает" (восстанавливает) текстовое окно экрана. 11.Какие функции обслуживания окон вы знаете? Установку параметров активного текстового окна выполняет функция window(int , int ,int , int );. Она описывает активное текстовое окно: первая пара аргументов задает соот- ветственно номера столбца и строки левого верхнего угла, вторая пара - правого нижнего угла. Строки и столбцы нумеруются, начиная от 1. Поэтому, например, координаты левого верхнего и правого нижнего углов экрана в режимах "25 строк х 80 столбцов" задаются парами (1,1) и (80,25). Расположение осей X и Y на экране показано на рис. 2.1. Фрейм окна С++ имеет следующую структуру: struct text_info {unsigned char winright, winbottom; /* столбец, строка правого нижнего угла */ attribute, normattr; /* атрибуты окна*/ currmode; /* текущий режим работы видеоадаптера */ screenheight; /* полная высота экрана */ screenwidth; /* полная ширина экрана */ сurх, сurу; }; /* строка, столбец текущей позиции курсора */ Информация об активном окне доступна при выполнении функции gettextinfo( struct text_info *t); При вызове эта функция заполняет поля структурной переменной описанной по шаблону text_info, указатель t на которую она получает. Функция window() инициализирует поля координат фрейма окна. Функции textcolor(), textbackground(), textattr() и другие управляют цветом отображаемых символов в окне. 12.Что такое курсор и как можно им управлять? элемент графического интерфейса, который указывает на объект, с которым будет производиться взаимодействие с помощью клавиатуры, мыши или другого устройства управления. 13.Зачем нужен байт атрибутов символа? Кодирует особенности отображения символа на экране: цвет пикселов, из которых формируется очертание символа (Foreground Color), цвет всех остальных пикселов знакоместа или цвет фона символа (Background Color), мерцание символа и необходимость повышения яркости символа при отображении. 14.Сколько цветов фона и символов можно одновременно использовать и почему? В режиме, устанавливаемом по умолчанию, для фона можно использовать 8 цветов, потому что бит в байте параметров, устанавливающий яркость или интенсивность фонового цвета, предназначается для другой цели. Он применяется для задания режима мерцания символа. В любом текстовом режиме IBM, управляя атрибутами, можно работать с 16-цветовой палитрой. Любой символ текст а может быть изображен любым из 16 цветов. 15.Какая структура данных используется для хранения цветов? Enum COLORS { /* Цвета нормальной яркости: */ BLACK, /* черный, 0 */ BLUE, /* синий, 1 */ GREEN, /* зеленый. 2 */ CYAN, /* сине-зеленый, 3 */ RED, /* красный, 4 */ MAGENTA, /* красно-синий, 5 */ BROWN, /* коричневый, 6 */ LIGHTGRAY, /* светло-серый. 7 */ /* Цвета повышенной яркости: */ DARKGRAY, /* темно-серый, 8 */ LIGHTBLUE, /* ярко-синий, 9 */ LIGHTGREEN, /* ярко-зеленый, 10 */ LIGHTCYAN, /* яркий сине-зеленый, 11 */ LIGHTRED, /* ярко-красный, 12 */ LIGHTMAGENTA, /* яркий красно-синий, 13 */ YELLOW, /* желтый, 14 */ WHITE /* белый. 15 */} |