Примеры выполнения заданий

advertisement
Пример выполнения задания 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
(байт).
Download