- •27 Сентября 2012г.
- •«Представление чисел в эвм».
- •1. Запишите прямой код числа, интерпретируя его как восьмибитовое целое без знака.
- •2. Запишите дополнительный код числа, интерпретируя его как восьмибитовое
- •3. Запишите в десятичной системе счисления целое число, если дан его дополнительный код:
- •Запишите прямой код числа, интерпретируя его как шестнадцатибитовое целое без знака.
- •Запишите дополнительный код числа, интерпретируя его как шестнадцатибитовое целое со знаком.
- •Переведите числа:
- •Записать числа десятичные числа X и y в прямом, обратном и дополнительном кодах в знаковом однобайтовом формате.
Запишите дополнительный код числа, интерпретируя его как шестнадцатибитовое целое со знаком.
а)2085010+2110=2087110=110001100001012→ 111000110000101(дополнительный)
б) -1864110+2110 = -1862010 = -1101000101111002 →
1,1101000111100(прямой) → 1,0010111000011(обратный) →
1,0010111000100(дополнительный)
Переведите числа:
10356+216 = 11006 = (1 * 63) + (1 * 62) = 35210;
3105810 +2110= 3105810 → 11201210223;
-
31058
3
31056
10352
3
2
10350
3450
3
2
3450
1150
3
0
1149
383
3
1
381
127
3
2
126
42
3
1
42
14
3
0
12
4
3
2
3
и
1
10100012+2110 = 10100012 + 111012 = 11011102 → 4205
Перевести X и Y в прямой, обратный и дополнительный коды восьмиразрядной сетки. Сложить их в обратном и дополнительном кодах. Результат перевести в прямой код. Проверить полученный результат, используя правила двоичной арифметики.
а) X= –11010; (X + Y) = 110101
Y= 1001111;
-
Прямой
Обратный
Дополнительный
X
1.0011010
1.1100101
1.1100110
Y
1001111
1001111
1001111
-
Сложение в
обратном коде
Сложение в
дополнительном коде
1,1100101
1001111
0,0110100
1
0,0110101
1,1100110
1001111
0,0110101
(1 отбрасывается)
Так как результат сложения является кодом положительного числа (знаковый разряд содержит нулевое значение), то (X+Y)обр=(X+Y)доп=X+Y=110101.
Ответ: 110101.
б) X= –11101; (X + Y) = -1000011
Y= –100110;
-
Прямой
Обратный
Дополнительный
X
1.0011101
1.1100010
1.1100011
Y
1.0100110
1.1011001
1.1011010
-
Сложение в
обратном коде
Сложение в
дополнительном коде
1.1100010
1.1011001
1.0111011
1
1.0111100
1.1100011
1.1011010
1.0111101
(1 отбрасывается)
Так как сумма является кодом отрицательного числа (знаковый разряд содержит единицу), то необходимо перевести результаты в прямой код.
Из обратного кода:
1.0111100(обр.) → 1,1000011(прям.)
Из дополнительного кода:
1.0111101(допол.) →1,1000010(обр.) + 0,0000001 → 1,1000011(прям.)
Таким образом, X+Y= -1000011 и полученный результат совпадает с обычной записью.
Ответ: –1000011.