Пример выполнения задания 1 Задание. Найти прямой, обратный и дополнительный коды в однобайтовом представлении для числа -5610. Выполнив перевод числа -56 в двоичную систему счисления, получим: -5610 = -1110002. Запишем прямой код числа. Всего в однобайтовом представлении 8 двоичных разрядов. Первый слева разряд – знаковый: 1 – для отрицательного числа, 0 – для положительного. Оставшиеся 7 разрядов занимает число в двоичном представлении. Если в числе меньше 7 разрядов, оставшиеся дополняются нулями слева. Таким образом, для числа -56 получаем прямой код в виде 1,0111000 (первая слева 1 соответствует знаку, затем следует 0, дополняющий двоичное шестиразрядное число до 7 разрядов, затем следует само двоичное число). Обратный код отрицательного числа получается из прямого инверсией всех разрядов, за исключением знакового. Получаем: 1,1000111. Дополнительный код отрицательного числа получается из обратного кода прибавлением к двоичному числу единицы (знаковый разряд в операции не участвует): 1000111 + 1 _____________ 1001000 -5610 Прямой код 1,0111000 Обратный код 1,1000111 Дополнительный код 1,1001000 Вывод: дополнительный код числа -56 равен 1,1001000. Пример выполнения задания 2 Задание. Задан дополнительный код числа в однобайтовом представлении: 1,1011100. Найти число в десятичной системе счисления. Поскольку первый разряд содержит число 1, делаем вывод, что число отрицательное. Следовательно, для решения задачи потребуется найти сначала обратный код, а затем прямой код числа, выполнив в обратной последовательности действия из задания 1. Определяем обратный код числа: из числа 1011100 (без первого разряда) вычитаем 1: 1011100 1 _____________ 1011011 Получаем 1011011. Обратный код числа равен 1,1011011. Определяем прямой код числа. Для этого выполняем инверсию всех разрядов обратного кода, кроме знакового. Получаем: 1,0100100. Из прямого кода выделяем искомое число в двоичной системе счисления, которое равно -100100. Переводим число из двоичной системы счисления в десятичную: -100100 = - (25+22) = - (32+4) =- 36. Вывод: дополнительный код 1,1011100 соответствует числу -36 в десятичной системе счисления. Пример выполнения задания 3 Задание. Определить объем видеопамяти в байтах, требуемый для хранения изображения на экране монитора, который может отображать N точек по горизонтали и M точек по вертикали при заданном цветовом режиме. N M Цветовой режим 1280 768 High Color Количество различных отображаемых цветов K и битовая глубина цвета (число разрядов, используемых для кодировки цвета) b связаны формулой: K 2b где, К – количество доступных цветов, b – битовая глубина. Объем памяти, необходимой для хранения графического изображения, занимающего весь экран, равен произведению количества пикселей на экране (N×M) на число двоичных разрядов, кодирующих одну точку (b). Расчетная формула для требуемого объема памяти (V) имеет вид: V=N×M×b (бит) (1) Значение b выбирается из следующей таблицы в зависимости от цветового режима. Цветовой режим b - глубина цвета (требуемое количество бит для кодирования цвета одной точки) K - количество возможных оттенков Черно-белый (без градаций серого цвета) 1 2 =2 4 градации серого цвета 2 2 =4 16 цветов 4 2 =16 Индексный 8 2 = 256 High Color 16 2 = 65536 True Color 24 2 = 16 777 216 1 2 4 8 16 24 В нашем случае N=1280, M=768, b=16. По формуле (1) получаем: V = 1280×768×16 (бит) = 1280×768×16 /8(байт) =1280×768×2 (байт) =1966080 (байт).