Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Modul1_2 (1).ppt
Скачиваний:
109
Добавлен:
23.02.2015
Размер:
1.07 Mб
Скачать

Перевод чисел из одной системы счисления в другую

Правило 4. Для перевода целого числа из S-системы в h- систему счисления в арифметике S-системы нужно последовательно делить это число и получающиеся частные на h до тех пор, пока частное не станет меньше h. Старшей цифрой в новой записи числа будет последнее частное, а следующие за ней цифры дают остатки, вписанные в последовательность, обратную их получению. Все вычисления производятся в старой S-системе. (При S < h прежде, чем записать число, надо получившиеся остатки переписать в цифры h-системы).

Основы информатики

31

Перевод чисел из одной

системы счисления в другую

Примеры

1. Перевести число 70 в двоичную систему счисления

70

2

 

 

 

 

 

0

35 2

 

 

 

 

 

 

1 17

2

 

1

 

8 2

 

 

 

 

 

 

 

 

 

 

0 4 2

 

 

 

 

 

 

 

0 2 2

7010 = 10001102

0

1

 

2. Перевести 10000000 в десятичную систему счисления

10000000 1010

 

 

 

 

 

- 1010

1100

1010

1100

- 1010

 

1

 

 

 

- 1010

10=210

 

 

 

1000=810

100000002 =12810

Основы информатики

Кодирование чисел

В ЭВМ используется коды чисел:

прямой,

обратный,

дополнительный.

Знак “+” кодируется нулем (0), знак “” кодируется единицей (1), которые записываются в дополнительном старшем разряде – знаковом разряде.

При помощи этих кодов:

автоматически определяется знак результата;

операция вычитания сводится к арифметическому сложению кодов чисел;

упрощается операционная часть ЭВМ.

Основы информатики

33

Прямой код числа

Прямой код числа С = + Cn Cn-1 Cn-2 ...C1 C0

 

 

C

 

 

при

 

C 0

 

 

Спр

 

 

 

 

 

 

C

 

при C 0

 

 

 

 

 

 

 

 

 

 

Pn 1

 

 

 

 

 

 

 

Для отрицательных двоичных чисел имеем: Cпр = 2 + - Cn Cn-1 ...C0 = 1.Cn Cn-1 ...C0,

где точкой отделен знаковый разряд.

Таким образом, для получения прямого кода числа надо в знаковый разряд записать 0 для положительных и 1 для отрицательных чисел.

Пример

 

C = +10110

C = -10110

Cпр= 0.10110

Cпр= 1.10110.

Основы информатики

34

Обратный код числа

Обратный код числа С = + Cn Cn-1 Cn-2 ...C1 C0

 

 

C

 

 

при

C 0

 

 

 

 

Собр

 

 

 

 

P0

 

 

C

 

при

C 0

 

 

 

 

 

 

 

 

 

 

Pn 2

 

 

 

 

 

 

 

 

 

Для отрицательных двоичных чисел имеем:

Cобр= 2n+2 -1- - Cn Cn-1 ...C0 =11..1–0.Cn Cn-1 ...C0 =1.Cn Cn-1 ...C0, где Ci = 1 при Ci = 0 и Ci = 0 при Ci = 1.

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

Пример

C = +10110 С = -10110 Cобр= 0.10110 Собр= 1.01001

Основы информатики

35

Дополнительный код числа

Дополнительный код числа С = + Cn Cn-1 Cn-2 ...C1 C0

 

 

C

 

 

при

 

C 0

 

 

Сдоп

 

 

 

 

 

 

C

 

при C 0

 

 

 

 

 

 

 

 

 

 

Pn 2

 

 

 

 

 

 

 

При представлении двоичного отрицательного числа в дополнительном коде в знаковый разряд надо записать 1, а цифровую часть заменить дополнением числа до 2n+1 .

Дополнительный код отрицательных чисел получается из обратного прибавлением единицы в младший разряд.

Cдоп = Собр +1, при С < 0 .

Пример

 

C = +10110

С = -10110

Cдоп= 0.10110

Сдоп= Собр+1 = 1.01001+1 = 1.01010

Основы информатики

Кодирование чисел

Пример

Найти дополнительный код числа – 6510

65 2

1 32 2

0 16 2

0 8 2

0 4 2

0 2 2 6510 = 10000012

0 1

1.1000001

– прямой код

В знаковом разряде – 1,

 

 

 

1.011111 0

– обратный код

т.к. число отрицательное

+

1

 

 

1.011111 1

– дополнительный код

 

37

Кодирование чисел

Числа в ЭВМ кодируются в полях, кратных целому числу байт. 1 байт = 8 разрядов (битов). Это необходимо учитывать при нахождении специальных кодов числа.

Например:

Найдем дополнительный код числа x = -4 xпр. = 1.0000100 – прямой код

xобр.= 1.1111011 – обратный код (инвертируем разряды)

+

1

xдоп.= 1.1111100 – дополнительный код

Основы информатики

38

Кодирование чисел

Выводы:

Только для отрицательных чисел прямой, обратный и дополнительный коды имеют различные значения.

У положительных чисел прямой, обратный и дополнительный коды совпадают!

При вычитании чисел в прямом коде возникают затруднения – нужно сначала определить больший модуль, от него отнять меньший и результату присвоить знак большего модуля. Поэтому применяют обратный и дополнительный коды чисел.

Основы информатики

39

Кодирование чисел

Сложение чисел в прямом и дополнительном коде

Правило 1. При сложении дополнительных кодов чисел знаковые разряды складываются аналогично остальным, перенос из знакового разряда теряется, результат получается в дополнительном коде.

Правило 2. При сложении чисел в обратном коде знаковые разряды складываются аналогично остальным, перенос из знакового разряда прибавляется к младшему разряду результата (так называемый циклический перенос), результат получается в обратном коде.

Основы информатики

40

Соседние файлы в папке Информатика