Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Разбор решений типовых задач




Задача 1. Пусть дано побайтовое шестнадцатеричное представление числа C2258000 с одинарной точностью (m=23, p=8). Переведем имеющееся представление в двоичную систему счисления:

1100 0010 0010 0101 1000 0000 0000 0000

Разделим двоичное представление на знак (1 бит), порядок (8 бит) и мантиссу (23 бита):

1 10000100 01001011000000000000000

Знаковый бит, равный 1 показывает, что число отрицательное.

Смещенный порядок 100001002 в десятичном виде соответствует числу 132. Скорректируем порядок: вычтем число 127 (2p-1-1 = 28-1-1) из 132, получим число 5.

К мантиссе добавим слева скрытую единицу 1,01001011000000000000000, перенесем порядок от скрытой единицы вправо на полученную величину порядка (порядок равен пяти):101001,011000000000000000.

И, наконец, определим десятичное число: 101001,0112 = 41,37510

Учитывая, что число отрицательное, окончательно имеем -41,375.

Задание 2. Найти десятичный эквивалент числа

а) 100010,1110ПК

Так как число записано в прямом коде, то старший разряд кодирует знак числа 1|00010,1110ПК, следовательно, имеем отрицательное число (в старшем разряде 1). Модуль числа равен 00010,11102. Переведем данное двоичное представление в десятичную систему счисления, получим:

00010,11102=1·21+1·2-1+1·2-2+1·2-3=2,875

Учитывая, что число отрицательное, окончательно получим -2,875.

б) 01010101ДК

Так как число записано в дополнительном коде, то старший разряд кодирует знак числа 0|1010101ДК, следовательно, имеем положительное число (в старшем разряде 0). Значит, дополнительный код числа совпадает с его прямым кодом и для получения десятичного эквивалента числа его просто надо перевести в десятичную систему счисления: 10101012=1·26+1·24+1·22+1·20=85

Таким образом, получили число 85.

в) 11010100ДК

Так как число записано в дополнительном коде, то старший разряд кодирует знак числа 1|1010100ДК, следовательно, имеем отрицательное число (в старшем разряде 1). Значит, для получения модуля числа его предварительно надо преобразовать:

– отбросив знаковый разряд, получим число 1010100;

– инвертируем все разряды до самой младшей единицы 0101100;

– переведем полученное число в десятичную систему счисления: 01011002=44. Получили модуль искомого числа.

Учитывая знак, окончательно получим -44.

г) 10101011ОК

Так как число записано в обратном коде, то старший разряд кодирует знак числа 1|0101011ОК, следовательно, имеем отрицательное число (в старшем разряде 1). Значит, для получения модуля числа его предварительно надо преобразовать:

– отбросив знаковый разряд, получим число 0101011;

– инвертируем все разряды 1010100;

– переведем полученное число в десятичную систему счисления: 10101002=84. Получили модуль искомого числа.

Учитывая знак, окончательно получим -84.

Задание 3. Опередить прямой, обратный и дополнительный восьми битный код представленных десятичных чисел.

а) 41

Так как число положительное, то его прямой, дополнительный и обратный коды совпадают. Переведем 41 в двоичную систему счисления: 41= 1010012. Так как число положительное, то в знаковом разряде должен быть ноль: 0| 101001, так же следует дополнить представление нулем перед самой старшей единицей для получения 8-ми битного представления числа: 0| 0101001 (положительные числа в случае увеличения числа разрядов дополняются слева нулями).

41=00101001ПК=00101001ДК=00101001ОК

б) -41

Так как число отрицательное, то для получения прямого кода числа требуется перевести модуль этого числа в двоичную систему счисления, а затем в знаковый разряд записать 1:

|-41|=41= 1010012=001010012 (получен 8-ми битный код модуля числа)

Записав 1 в знаковый разряд, окончательно получим: -41=10101001ПК.

 

Так как число отрицательное, то для получения дополнительного кода числа требуется перевести модуль этого числа в двоичную систему счисления, а затем проинвертировать все разряды левее младшей единицы:

|-41|=41= 1010012=001010012 (получен 8-ми битный код модуля числа)

Младшая единица стоит в записи последней, значит, после инвертирования левее стоящих цифр, получим: 11010111.

Таким образом, -41=11010111ДК.

 

Так как число отрицательное, то для получения обратного кода числа требуется перевести модуль этого числа в двоичную систему счисления, а затем проинвертировать все разряды:

|-41|=41= 1010012=001010012 (получен 8-ми битный код модуля числа)

Проинвертировав все цифры, получим: 11010110.

Таким образом, -41=11010110ОК.

 

 

 


 

Ответы к самостоятельной работе.

Задание 1.

№ варианта Десятичное число
  49,125
  -40,375
  -32,5
  -55,25
  -61,375
  45,125
  46,875
  44,625
  37,875
  -55,625

 

Задание 2.

№ варианта ПК ДК ДК ОК
  -27,3125 64 -113 114
  -23,8125 76 -97 -85
  -12,8125 49 -104 -50
  -9,3125 58 -123 88
  -19,5625 58 -109 -88
  -12,5625 86 -117 -15
  -13,0625 63 -112 -29
  -12,3125 38 -124 43
  -4,8125 77 -108 63
  -7,4375 83 -110 -85

Задание 3.

№ варианта Первое число Второе число
ПК ДК ОК ПК ДК ОК
  00110001 10111111 11000001 11000000
  00110111 11010110 10101010 10101001
  01000011 10110111 11001001 11001000
  01010001 11001110 10110010 10110001
  01011010 11100011 10011101 10011100
  01000101 11011000 10101000 10100111
  01010011 11001101 10110011 10110010
  00101101 11000010 10111110 10111101
  01011111 11000101 10111011 10111010
  01001111 11001011 10110101 10110100
             

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных