Числовая информация перед выполнением вычислений проходит этап перевода из десятичной позиционной системы счисления, которую мы обычно используем , в двоичную позиционную систему счисления, которая применяется в компьютере. Этот процесс компьютер выполняет автоматически
СИСТЕМЫ
СЧИСЛЕНИЯ
(Математические языки)
Системой счисления называется
способ представления любого числа с помощью алфавита данной системы ( т.е. с
помощью цифр или других знаков).
Системы счисления делятся на позиционные и непозиционные.
Система счисления называется
позиционной, если одна и та же цифра имеет различное значение в зависимости
от её позиции в числе.
В математике используется позиционная система счисления с алфавитом из десяти
знаков: 0 1 2 3 4 5 6 7 8 9 (десятичная система).
В компьютерной технике применяются позиционные системы с алфавитом из двух знаков:
0 и 1 ( двоичная система ) и с алфавитом из шестнадцати знаков: 0 1 2 3 4 5
6 7 8 9 a b c d e f ( шестнадцатиричная система счисления ).
Десятичное число 777 означает 7 сотен, 7 десятков и 7 единиц.
В непозиционной системе счисления выделяют некоторые знаки для записи основных чисел. Остальные числа получаются как сумма или разность основных чисел.
Пример: римская система счисления I,V,X,L,... - основные знаки, II,III,VI,... - суммы, IV,IX,... - разности.
ПОЗИЦИОННЫЕ СИСТЕМЫ СЧИСЛЕНИЯ
Количество знаков в алфавите позиционной системы называется основанием системы и обозначается как S.
Например, в десятичной системе счисления алфавит состоит из десяти знаков: 0 1 2 3 4 5 6 7 8 9 , следовательно S=10.
В двоичной системе алфавит состоит из двух знаков: 0 1 , значит S=2.
Любое число в позиционной системе счисления является условной записью и может быть подробно представлено с помощью основания данной системы.
Пример : десятичное число 123= 1 x 10 2 + 2 x 10 1 + 3 x 10 0
Попробуем записать это в общем виде. Допустим, что X - любое число . Обозначим любую из цифр, с помощью которых записано это число, как латинскую букву a, после которой в скобках указан номер позиции этой цифры в числе X, т.е. число X имеет вид :
a(n) a(n-1)...a(1)
a(0) , a(-1) a(-2) ... a(-m)
где
a(n)...a(0)...a(-m) - любые цифры от 0 до (S-1), n и m - любые целые числа.
Запятая отделяет целую часть числа от дробной.
Пример:
X=1234,56 = 1 x 103+2 x
102+3 x 101+4 x
100+5 x 10-1+6
x 10-2,
так как a(3)=1 a(2)=2 a(1)=3
a(0)=4 a(-1)=5 a(-2)=6
S=10
Тогда справедливо выражение:
X= a(n) x Sn
+ a(n-1) x S(n-1) + ... +
a(1) x S1 + a(0) x
S0 + a(-1) x S-1 + a(-2)
x S-2 + ... + a(-m) x
S-m
Это основная формула представления чисел в позиционной системе счисления.
Позиции цифр в числе называются разрядами. Разряды нумеруются так, как
показано в следующих примерах:
десятичное число | 2 | 7 | 5 | 0 | 1 | 9 | , | 3 | 8 | 1 |
№ разрядов | 5 | 4 | 3 | 2 | 1 | 0 | -1 | -2 | -3 |
двоичное число | 1 | 0 | 1 | 1 | 1 | 0 | , | 1 | 1 | 0 |
№ разрядов | 5 | 4 | 3 | 2 | 1 | 0 | -1 | -2 | -3 |
ПЕРЕВОД ЧИСЕЛ
ИЗ ДВОИЧНОЙ СИСТЕМЫ СЧИСЛЕНИЯ
В ДЕСЯТИЧНУЮ И ОБРАТНО
Двоичная система счисления
имеет в алфавите две цифры: 0 и 1, следовательно основание двоичной системы
S=2.
Рассмотрим двоичное число 100011. Представим его по основной формуле позиционной
системы:
1
0 0 0 1 1
|
=1x25 + 0x24 + 0x23 + 0x22 + 1x21 + 1x20 = 32 + 2 + 1 = 35 | |
№ разрядов
|
5
4 3 2 1 0
|
Вспомним, что
|
Чтобы перевести двоичное число в десятичную систему счисления (в десятичный код), нужно пронумеровать разряды и представить это число по основной формуле позиционной системы в виде суммы степеней основания двоичной системы с соответственными коэффициентами, а затем вычислить эту сумму. Чтобы перевести десятичное число в двоичный код нужно произвести обратные действия: представить десятичное число в виде суммы степеней числа 2 с коэффициентами 1 либо 0 . Это нетрудно сделать методом подбора по таблице степеней числа 2 снизу вверх. Последовательность полученных коэффициентов и будет являться двоичным кодом данного числа. |
Пример:
155 =1 х 27 + 0 х 26
+ 0 х 25 + 1 х 24
+ 1 х 23 + 0 х
22 + 1 х 21 + 1 х
20=10011011
ПЕРЕВОД ЧИСЕЛ ИЗ ДВОИЧНОЙ СИСТЕМЫ В ШЕСТНАДЦАТИРИЧНУЮ И ОБРАТНО
16-ричная система имеет
алфавит из 16 символов: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Следовательно, основание S=16.
Перевод чисел из двоичного кода в 16-ричный и обратно можно производить по основной
формуле записи чисел в позиционной системе счисления (аналогично переводу чисел
из двоичного кода в десятичный
и обратно, рассмотренному ранее). Однако, поскольку основание 16-ричной системы
кратно основанию двоичной системы ( 16=24),существует более простой
способ. Рассмотрим этот способ.
Для перевода двоичного кода в 16-ричный нужно:
10-й код |
2-й код |
16-ричн.код |
0 | 0000 | 0 |
1 | 0001 | 1 |
2 | 0010 | 2 |
3 | 0011 | 3 |
4 | 0100 | 4 |
5 | 0101 | 5 |
6 | 0110 | 6 |
7 | 0111 |
7 |
8 | 1000 | 8 |
9 | 1001 | 9 |
10 | 1010 | A |
11 | 1011 | B |
12 | 1100 | C |
13 | 1101 | D |
14 | 1110 | E |
15 | 1111 | F |
При переводе из шестнадцатеричного кода в двоичный нужно проделать обратные действия, то есть, заменить каждую шестнадцатеричную цифру её двоичным эквивалентом (тетрадой).
Примеры:
1100 0001 0101 1111 = c15f
3d = 0011 1101 = 11 1101