Другие языки программирования и технологии

Затрудняюсь с темой 'Системы счисления'

Добрый день!

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

Буду очень рад понятному ответу
Решение задач по теме «Системы счисления»

Теоретический материал

Системы счисления

Системой счисления называется совокупность правил наименования и изображения чисел с помощью конечного набора символов, называемых цифрами.

Системы счисления бывают непозиционные и позиционные.

Система счисления называется непозиционной, если значение цифры в записи числа не зависит от позиции, которую она занимает в последовательности цифр, изображающей число. Примеры непозиционных систем счисления: римская, древнегреческая и др.

Система счисления называется позиционной, если значение цифры в записи числа зависит от позиции, которую она занимает в последовательности цифр, изображающей число. Примеры позиционных систем счисления: десятичная, двоичная, восьмеричная, шестнадцатеричная и др.

В позиционных системах счисления основание системы счисления – это количество цифр, используемых в записи числа. В таблице собраны примеры нескольких систем счисления с указанием их основания и алфавита.

Название системы

Основание

Используемые цифры

Десятичная

10

0,1,2,3,4,5,6,7,8,9

Двоичная

2

0,1

Восьмеричная

8

0,1,2,3,4,5,6,7

Шестнадцатеричная

16

0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

В следующей таблице приведены первые 17 числе нескольких систем счисления:

Основание

«10»

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

«2»

0

1

10

11

100

101

110

111



«8»

0

1

2

3

4

5

6

7

10

11

12

13

14

15

16

17

20

«16»

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

10

Обратите внимание, что при последовательном счете, начиная с нуля, в любой системе обязательно наступает момент, когда число становится двузначным и обозначается как «10». Появление двух знаков в изображении числа означает, что кончились знаки алфавита данной системы счисления и приходится использовать комбинацию из двух цифр.

Развернутая форма записи чисел

В позиционной системе счисления любое вещественное число может быть представлено в виде: Aq = (an-1qn-1+an-2qn-2 + … + a1q1 + a0q0 + a-1q-1 + a-2q-2 + … + a-mq-m) – развернутая форма числа.

Здесь:

А – само число,

q – основание системы счисления,

ai – цифры данной системы счисления (an-2; an-1 и др.),

n – число разрядов целой части числа,

m - число разрядов дробной части числа.

Пример 1. Записать в развернутом виде число А10 = 5124,23

5124,2310 = 5*103 + 1*102 + 2*101 + 4*100 + 2*10-1 + 3*10-2

Пример 2. Записать в развернутом виде число А8 = 327,14

327,148 = 3*82 + 2*81 + 7*80 + 1*8-1 + 4*8-2

Пример 3. Записать в развернутом виде число А16 = 3D,2E

3D,2E 16 = 3*161 + D*160 + 2*16-1 + E*16-2 = 3*161 + 13*160 + 2*16-1 + 14*16-2

Свернутой формой записи чисел называется запись в виде

A = an-1an-2…a1a0,a-1a-2…a-m . именно такой формой записи чисел мы пользуемся в повседневной жизни.

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

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

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

2. Полученные остатки, являющиеся цифрами числа в новой системе счисления, , привести в соответствие с алфавитом новой системы счисления.

3. Составить число в новой системе счисления, записывая его, начиная с последнего частного.

Например, для перевода из десятичной системы в двоичную, делят на 2; для перевода в восьмеричную – на 8 и т. д.

Пример 4. 17510  x2

Таким образом, 17510 101011112

Пример 5. 17510 х8

Таким образом, 17510 2578

Пример 6. 17510 х16

Число 15 в шестнадцатеричной системе записывается как «F», а число 10 – как «А». Таким образом, 17510 AF16

Дробную часть числа, если таковая имеется, переводят по другому алгоритму.
ИЛ
Илья Лифанов
168
Лучший ответ
получение двоичной системы счисления:
число делится на два много раз, пока в результате не получится ноль. Остатки от деления пишутся отдельно. Потом остатки о т деления пишут снизу вверх:

253/2 = 126 остаток 1
126/2 = 63 остаток 0
63/2 = 31 остаток 1
31/2 = 15 остаток 1
15/2 = 7 остаток 1
7/2 = 3 остаток 1
3/2 = 1 остаток 1
1/2 = 0 остаток 1

253 в десятичной равно 11111101 в двоичной.

Было придумано для цифровой техники где 1 - это логический единица (есть напряжение), или 0 - логический ноль (нет напряжения). Самое простое что можно было придумать для цифровой, электронной техники.

Восьмиричная и Шестнадцатиричная системы пришли именно из двоичной системы, для простоты.

Восьмиричная описывает все состояния трех разрядов двоичной.
Шестнадцатиричная описывает все состояния четырех разрядов.

Далее слева будут идти двоичная, а справа равная ей восьмиричная

000 - 0
001 - 1
010 - 2
011 - 3
100 - 4
101 - 5
110 - 6
111 - 7

Пример для восьмиричной системы:
375 в восьмиричной - это 011 111 101 в двоичной. Пробелы ставил только для наглядности чтобы вы могли увидеть зависимость чисел. То есть 3 это 011, 7 это 111 и т. д. Кстати это число 253 в десятичной системе счисления из предыдущего примера.
Еще парочку примеров для закрепления:
335 - 011011101
247 - 010100111

Для шестнадцатиричной системы счисления все тоже самое что и для восьмиричной, только значений побольше:

0000 - 0
0001 - 1
0010 - 2
0011 - 3
0100 - 4
0101 - 5
0110 - 6
0111 - 7
1000 - 8
1001 - 9
1010 - A
1011 - B
1100 - C
1101 - D
1110 - E
1111 - F

И пример для шестнадцатиричной:
FD в шестнадцатиричной это 1111 1101 в двоичной. Опять же пробелы поставил для наглядности. И опять же это число 253 из первого примера.
Еще пару примеров:
FF - 11111111
03 - 00000011

Нужно понимать что впереди идущие нули ничего не значат. То есть надпись 123 в десятичной равна 0123 или даже 00123, но не принято писать впереди нули. Так и в двоичной и восьмиричной или шестнадцатиричной. То есть 2 в десятиричной это 10 или 010 или 0010.

Получается что двоичная система возникла из за необходимости простоты схемотехники цифровых устройств. А шестнадцатиричная и восьмиричная возникли в результате упрощения написания двоичной (кучу единичек и нулей тяжело писать можно сбиться) системы.
Пронин Евгений
Пронин Евгений
15 408
Попробую только про перевод из 10-чной системы в меньшие системы, ибо много букв.

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

сначала рассмотрим структуру десятичного числа, к примеру 1327

узнаем, сколько в нем содержится десяток, т. е. разделим на 10. Выйдет 130 десяток и недодесятка 7(не хватило ей 3 до перехода в разряд десяток). Т. е. разряд единиц (7 и прочее) _ это остатки от десяток.

узнаем, сколько в числе 1327 содержится сотен. Т. е. можно 1327 делить на 100, а можно число десяток 132 поделить на 10. Выйдет 13 целых сотен и остаток 2 - это недосотня 20(не хватило ей 80 до сотен). Т. е. в любом числе - разряд десяток (20 и тд) - это остатки от сотен.
И так далее.
Еще понятно, что каждый разряд десятичного числа всегда меньше 10

В других числовых системах так же. Но там каждый разряд в других пределах. К примеру, разряды двоичного всегда меньше 2.

Сравним 1327 и его двоичный аналог. 1327 это количество 1327 элементов. Легко понять, что в двоичном содержится так же 1327 элементов.

Значит, чтобы узнать "десятки" двоичного числа, можно количество его элементов (1327) поделить на 2. Найдем, что количество двоичных "десяток" в нем 663, а остаток 1. Остаток 1 - это двоичная "недодесятка". Т. е ставиться она будет в самом конце числа (в разряде единиц).
....1
Узнаем, сколько в числе двоичных "сотен". количество двоичных "десяток" 663 делим на 2. Получится 331 двоичных "сотен" и остаток 1. 1 это двоичная "недосотня". Будет ставиться в разряде десяток.
....11
Ищем сколько двоичных "тысяч": 331 делить на 2. Получится 165 "тысяч" и 1 "недотысяча", ставим ее в разряд сотен.

и так далее.

Если остаток равен 0, значит в данном разряде нет "недодесяток" или "недосотен". Т. е в разряде ставим 0.

Последнее частное (целая часть) будет самым большим разрядом, ставится в начале числа.

в итоге, если продолжить вычисление, 1327 = 10100101111
__
_Mаксим _
537
_Mаксим _ т. е. в "Выйдет 130 десяток" ошибка, конечно, там 132