Для чего двоичная система исчисления

Двоичная система исчисления

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

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

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Экскурс в прошлое

Минимально необходимый теоретический базис

Для того чтобы полностью разобраться с двоичным исчислением нужно разобрать, или повторить основные определения. Это будет фундаментом для того, чтобы вы смогли понять то, что дальше написано. К ним относятся такие понятия как:

Понимая все то, что написано выше, можно перейти к сути вопроса. Итак:

Двоичная система счисления – позиционная система с основанием 2. Для отображения чисел применяется два знака – 0 и 1.

В математике обозначается с помощью нижнего индекса, где указано основание. Выглядит это вот так Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления. Натуральные числа представляются по следующей формуле:

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Немного про то, что значат буквы в формуле:

Практика

Без практики объяснить, как этим пользоваться – трудно. Поэтому рассмотрим пару примеров. Однако для начала вам необходимо скачать таблицу, где значения бинарного кода представляются в десятичной форме. Я взял первую попавшуюся таблицу с интернета. Выглядеть она будет примерно так:

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Задача 1: Представить 7 в двоичном коде, а потом расписать его с помощью формулы выше.

Для того чтобы это сделать надо:

Как видно из примера здесь нет ничего сложного. Давайте разберем что-нибудь посложнее, да и найдем таблицу посерьезнее. Я взял вот такую:

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Задача 2: отобразить 13 в двоичной системе счисления.

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

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Получаем что Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Смотрим что в таблице:

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

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

Полезные свойства

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Области применения

Заключение

На этом всё, вот вы и познакомились с двоичной системой исчисления. Здесь мы рассмотрели общие положения и научились пользоваться таблицей для проверки результатов. Также вы знаете отрасли применения. Прочитав другие материалы нашего сайта, вы сможете научиться выполнять арифметические операции, и переводить счисление с основанием два в другие нумерации. Например шестнадцатеричную и восьмеричную (основание шестнадцать и восемь). При возникновении вопросов оставляйте их в комментариях.

Источник

Двоичное счисление на пальцах

Все знают, что компьютеры состоят из единиц и нулей. Но что это значит на самом деле?

Если у вас в школе была информатика, не исключено, что там было упражнение на перевод обычных чисел в двоичную систему и обратно. Маловероятно, что кто-то вам объяснял практический смысл этой процедуры и откуда вообще берётся двоичное счисление. Давайте закроем этот разрыв.

Эта статья не имеет практической ценности — читайте её просто ради интереса к окружающему миру. Если нужны практические статьи, заходите в наш раздел «Где-то баг», там каждая статья — это практически применимый проект.

Отличный план

Чтобы объяснить всё это, нам понадобится несколько тезисов:

Система записи — это шифр

Если у нас есть девять коров, мы можем записать их как 🐄🐄🐄🐄🐄🐄🐄🐄🐄 или как 9 × 🐄.

Почему 9 означает «девять»? И почему вообще есть такое слово? Почему такое количество мы называем этим словом? Вопрос философский, и короткий ответ — нам нужно одинаково называть числа, чтобы друг друга понимать. Слово «девять», цифра 9, а также остальные слова — это шифр, который мы выучили в школе, чтобы друг с другом общаться.

Допустим, к нашему стаду прибиваются еще 🐄🐄🐄. Теперь у нас 🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄 — двенадцать коров, 12. Почему мы знаем, что 12 — это «двенадцать»? Потому что мы договорились так шифровать числа.

Нам очень легко расшифровывать записи типа 12, 1920, 100 500 и т. д. — мы к ним привыкли, мы учили это в школе. Но это шифр. 12 × 🐄 — это не то же самое, что 🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄🐄. Это некая абстракция, которой мы пользуемся, чтобы упростить себе счёт.

Мы привыкли шифровать десятью знаками

У нас есть знаки 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9 — всего десять знаков. Этим числом знаков мы шифруем количество единиц, десятков, сотен, тысяч и так далее.

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

Например, перед нами число 19 547. Мы знаем, что в нём есть:

Если приглядеться, то каждый следующий разряд числа показывает следующую степень десятки:

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

Система записи — это условность

Представим бредовую ситуацию: у нас не 10 пальцев, а 6. И в школе нас учили считать не десятками, а шестёрками. И вместо привычных цифр мы бы использовали знаки ØABCDE. Ø — это по-нашему ноль, A — 1, B — 2, E — 5.

Вот как выглядели бы привычные нам цифры в этой бредовой системе счисления:

0 — Ø
1 — A
2 — B
3 — C
4 — D
5 — E
6 — AØ
7 — AA
8 — AB
9 — AC
10 — AD
11 — AE
12 — BØ
13 — BA
14 — BB
15 — BC
16 — BD
17 — BE
18 — CØ
19 — CA
20 — CB
21 — CC
22 — CD
23 — CE
24 — DØ
25 — DA
26 — DB
27 — DC
28 — DD
29 — DE
30 — EØ
31 — EA
32 — EB
33 — EC
34 — ED
35 — EE
36 — AØØ
37 — AØA
38 — AØB
39 — AØC
40 — AØD
41 — AØE

В этой системе мы считаем степенями шестёрки. Число ABADØ можно было бы перевести в привычную нам десятичную запись вот так:

A × 6 4 = 1 × 1296 = 1296

B × 6 3 = 2 × 216 = 432

1296 + 432 + 36 + 24 + 0 = 1788. В нашей десятичной системе это 1788, а у людей из параллельной вселенной это ABADØ, и это равноценно.

Выглядит бредово, но попробуйте вообразить, что у нас в сумме всего шесть пальцев. Каждый столбик — как раз шесть чисел. Очень легко считать в уме. Если бы нас с детства учили считать шестёрками, мы бы спокойно выучили этот способ и без проблем всё считали. А счёт десятками вызывал бы у нас искреннее недоумение: «Что за бред, считать числом AD? Гораздо удобнее считать от Ø до E!»

То, как мы шифруем и записываем числа, — это следствие многовековой традиции и физиологии. Вселенной, космосу, природе и стадам коров глубоко безразлично, что мы считаем степенями десятки. Природа не укладывается в эту нашу систему счёта.

Двоичная система (тоже нормальная)

Внутри компьютера работают транзисторы. У них нет знаков 0, 1, 2, 3… 9. Транзисторы могут быть только включёнными и выключенными — обозначим их 💡 и ⚫.

Мы можем научить компьютер шифровать наши числа этими транзисторами так же, как шестипалые люди шифровали наши числа буквами. Только у нас будет не 6 букв, а всего две: 💡 и ⚫. И выходит, что в каждом разряде будет стоять не число десяток в разной степени, не число шестёрок в разной степени, а число… двоек в разной степени. И так как у нас всего два знака, то получается, что мы можем обозначить либо наличие двойки в какой-то степени, либо отсутствие:

8 — 💡 ⚫⚫⚫
9 — 💡 ⚫⚫ 💡
10 — 💡 ⚫ 💡 ⚫
11 — 💡 ⚫ 💡 💡
12 — 💡 💡 ⚫⚫
13 — 💡 💡 ⚫ 💡
14 — 💡 💡 💡 ⚫
15 — 💡 💡 💡 💡16 — 💡 ⚫⚫⚫⚫
17 — 💡 ⚫⚫⚫ 💡
18 — 💡 ⚫⚫ 💡 ⚫
19 — 💡 ⚫⚫ 💡 💡
20 — 💡 ⚫ 💡 ⚫⚫
21 — 💡 ⚫ 💡 ⚫ 💡
21 — 💡 ⚫ 💡 💡 ⚫
23 — 💡 ⚫ 💡 💡 💡
24 — 💡 💡 ⚫⚫⚫
25 — 💡 💡 ⚫⚫ 💡
26 — 💡 💡 ⚫ 💡 ⚫
27 — 💡 💡 ⚫ 💡 💡
28 — 💡 💡 💡 ⚫⚫
29 — 💡 💡 💡 ⚫ 💡
30 — 💡 💡 💡 💡 ⚫
31 — 💡 💡 💡 💡 💡32 — 💡 ⚫⚫⚫⚫⚫
33 — 💡 ⚫⚫⚫⚫ 💡
34 — 💡 ⚫⚫⚫ 💡 ⚫
35 — 💡 ⚫⚫⚫ 💡 💡
36 — 💡 ⚫⚫ 💡 ⚫⚫
37 — 💡 ⚫⚫ 💡 ⚫ 💡
38 — 💡 ⚫⚫ 💡 💡 ⚫
39 — 💡 ⚫⚫ 💡 💡 💡
40 — 💡 ⚫ 💡 ⚫⚫⚫
41 — 💡 ⚫ 💡 ⚫⚫ 💡
42 — 💡 ⚫ 💡 ⚫ 💡 ⚫
43 — 💡 ⚫ 💡 ⚫ 💡 💡
44 — 💡 ⚫ 💡 💡 ⚫⚫
45 — 💡⚫💡💡⚫💡
46 — 💡⚫💡💡💡⚫
47 — 💡⚫💡💡💡💡
48 — 💡💡⚫⚫⚫⚫
49 — 💡💡⚫⚫⚫💡
50 — 💡💡⚫⚫💡⚫
51 — 💡💡⚫⚫💡💡
52 — 💡💡⚫💡⚫⚫
53 — 💡💡⚫💡⚫💡
54 — 💡💡⚫💡💡⚫
55 — 💡💡⚫💡💡💡
56 — 💡💡💡⚫⚫⚫
57 — 💡💡💡⚫⚫💡
58 — 💡💡💡⚫💡⚫
59 — 💡💡💡⚫💡💡
60 — 💡💡💡💡⚫⚫
61 — 💡💡💡💡⚫💡
62 — 💡💡💡💡💡⚫
63 — 💡💡💡💡💡💡

Если перед нами число 💡 ⚫💡⚫⚫ 💡💡⚫⚫, мы можем разложить его на разряды, как в предыдущих примерах:

256 + 0 + 64 + 0 + 0 + 8 + 4 + 0 + 0 = 332

Получается, что десятипалые люди могут записать это число с помощью цифр 332, а компьютер с транзисторами — последовательностью транзисторов 💡⚫💡⚫⚫ 💡💡⚫⚫.

Если теперь заменить включённые транзисторы на единицы, а выключенные на нули, получится запись 1 0100 1100. Это и есть наша двоичная запись того же самого числа.

Почему говорят, что компьютер состоит из единиц и нулей (и всё тлен)

Инженеры научились шифровать привычные для нас числа в последовательность включённых и выключенных транзисторов.

Дальше эти транзисторы научились соединять таким образом, чтобы они умели складывать зашифрованные числа. Например, если сложить 💡⚫⚫ и ⚫⚫💡, получится 💡⚫💡. Мы писали об этом подробнее в статье о сложении через транзисторы.

Дальше эти суммы научились получать супербыстро. Потом научились получать разницу. Потом умножать. Потом делить. Потом всё это тоже научились делать супербыстро. Потом научились шифровать не только числа, но и буквы. Научились их хранить и считывать. Научились шифровать цвета и координаты. Научились хранить картинки. Последовательности картинок. Видео. Инструкции для компьютера. Программы. Операционные системы. Игры. Нейросети. Дипфейки.

И всё это основано на том, что компьютер умеет быстро-быстро складывать числа, зашифрованные как последовательности включённых и выключенных транзисторов.

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

Когда человека не станет, скорость света будет по-прежнему 299 792 458 метров в секунду. Но уже не будет тех, кто примется считать метры и секунды. Такие дела.

Источник

Основы систем счисления

Изучая кодировки, я понял, что недостаточно хорошо понимаю системы счислений. Тем не менее, часто использовал 2-, 8-, 10-, 16-ю системы, переводил одну в другую, но делалось все на “автомате”. Прочитав множество публикаций, я был удивлен отсутствием единой, написанной простым языком, статьи по столь базовому материалу. Именно поэтому решил написать свою, в которой постарался доступно и по порядку изложить основы систем счисления.

Введение

Система счисления — это способ записи (представления) чисел.

Что под этим подразумевается? Например, вы видите перед собой несколько деревьев. Ваша задача — их посчитать. Для этого можно — загибать пальцы, делать зарубки на камне (одно дерево — один палец\зарубка) или сопоставить 10 деревьям какой-нибудь предмет, например, камень, а единичному экземпляру — палочку и выкладывать их на землю по мере подсчета. В первом случае число представляется, как строка из загнутых пальцев или зарубок, во втором — композиция камней и палочек, где слева — камни, а справа — палочки

Системы счисления подразделяются на позиционные и непозиционные, а позиционные, в свою очередь, — на однородные и смешанные.

Непозиционная — самая древняя, в ней каждая цифра числа имеет величину, не зависящую от её позиции (разряда). То есть, если у вас 5 черточек — то число тоже равно 5, поскольку каждой черточке, независимо от её места в строке, соответствует всего 1 один предмет.

Позиционная система — значение каждой цифры зависит от её позиции (разряда) в числе. Например, привычная для нас 10-я система счисления — позиционная. Рассмотрим число 453. Цифра 4 обозначает количество сотен и соответствует числу 400, 5 — кол-во десяток и аналогично значению 50, а 3 — единиц и значению 3. Как видим — чем больше разряд — тем значение выше. Итоговое число можно представить, как сумму 400+50+3=453.

Однородная система — для всех разрядов (позиций) числа набор допустимых символов (цифр) одинаков. В качестве примера возьмем упоминавшуюся ранее 10-ю систему. При записи числа в однородной 10-й системе вы можете использовать в каждом разряде исключительно одну цифру от 0 до 9, таким образом, допускается число 450 (1-й разряд — 0, 2-й — 5, 3-й — 4), а 4F5 — нет, поскольку символ F не входит в набор цифр от 0 до 9.

Смешанная система — в каждом разряде (позиции) числа набор допустимых символов (цифр) может отличаться от наборов других разрядов. Яркий пример — система измерения времени. В разряде секунд и минут возможно 60 различных символов (от «00» до «59»), в разряде часов – 24 разных символа (от «00» до «23»), в разряде суток – 365 и т. д.

Непозиционные системы

Как только люди научились считать — возникла потребность записи чисел. В начале все было просто — зарубка или черточка на какой-нибудь поверхности соответствовала одному предмету, например, одному фрукту. Так появилась первая система счисления — единичная.

Единичная система счисления

Число в этой системе счисления представляет собой строку из черточек (палочек), количество которых равно значению данного числа. Таким образом, урожай из 100 фиников будет равен числу, состоящему из 100 черточек.
Но эта система обладает явными неудобствами — чем больше число — тем длиннее строка из палочек. Помимо этого, можно легко ошибиться при записи числа, добавив случайно лишнюю палочку или, наоборот, не дописав.

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

Древнеегипетская десятичная система

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Почему она называется десятичной? Как писалось выше — люди стали группировать символы. В Египте — выбрали группировку по 10, оставив без изменений цифру “1”. В данном случае, число 10 называется основанием десятичной системы счисления, а каждый символ — представление числа 10 в какой-то степени.

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

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Вавилонская шестидесятеричная система

В отличии от египетской, в вавилонской системе использовалось всего 2 символа: “прямой” клин — для обозначения единиц и “лежачий” — для десятков. Чтобы определить значение числа необходимо изображение числа разбить на разряды справа налево. Новый разряд начинается с появления прямого клина после лежачего. В качестве примера возьмем число 32:
Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления
Число 60 и все его степени так же обозначаются прямым клином, что и “1”. Поэтому вавилонская система счисления получила название шестидесятеричной.
Все числа от 1 до 59 вавилоняне записывали в десятичной непозиционной системе, а большие значения — в позиционной с основанием 60. Число 92:
Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления
Запись числа была неоднозначной, поскольку не существовало цифры обозначающей ноль. Представление числа 92 могло обозначать не только 92=60+32, но и, например, 3632=3600+32. Для определения абсолютного значения числа был введен специальный символ для обозначения пропущенного шестидесятеричного разряда, что соответствует появлению цифры 0 в записи десятичного числа:
Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления
Теперь число 3632 следует записывать, как:

Для чего двоичная система исчисления. Смотреть фото Для чего двоичная система исчисления. Смотреть картинку Для чего двоичная система исчисления. Картинка про Для чего двоичная система исчисления. Фото Для чего двоичная система исчисления

Шестидесятеричная вавилонская система — первая система счисления, частично основанная на позиционном принципе. Данная система счисления используется и сегодня, например, при определении времени — час состоит из 60 минут, а минута из 60 секунд.

Римская система

Римская система не сильно отличается от египетской. В ней для обозначения чисел 1, 5, 10, 50, 100, 500 и 1000 используются заглавные латинские буквы I, V, X, L, C, D и M соответственно. Число в римской системе счисления — это набор стоящих подряд цифр.

Позиционные системы счисления

Как упоминалось выше — первые предпосылки к появлению позиционной системы возникли в древнем Вавилоне. В Индии система приняла форму позиционной десятичной нумерации с применением нуля, а у индусов эту систему чисел заимствовали арабы, от которых её переняли европейцы. По каким-то причинам, в Европе за этой системой закрепилось название “арабская”.

Десятичная система счисления

Это одна из самых распространенных систем счисления. Именно её мы используем, когда называем цену товара и произносим номер автобуса. В каждом разряде (позиции) может использоваться только одна цифра из диапазона от 0 до 9. Основанием системы является число 10.

Для примера возьмем число 503. Если бы это число было записано в непозиционной системе, то его значение равнялось 5+0+3 = 8. Но у нас — позиционная система и значит каждую цифру числа необходимо умножить на основание системы, в данном случае число “10”, возведенное в степень, равную номеру разряда. Получается, значение равно 5*10 2 + 0*10 1 + 3*10 0 = 500+0+3 = 503. Чтобы избежать путаницы при одновременной работе с несколькими системами счисления основание указывается в качестве нижнего индекса. Таким образом, 503 = 50310.

Помимо десятичной системы, отдельного внимания заслуживают 2-, 8-, 16-ая системы.

Двоичная система счисления

Эта система, в основном, используется в вычислительной технике. Почему не стали использовать привычную нам 10-ю? Первую вычислительную машину создал Блез Паскаль, использовавший в ней десятичную систему, которая оказалась неудобной в современных электронных машинах, поскольку требовалось производство устройств, способных работать в 10 состояниях, что увеличивало их цену и итоговые размеры машины. Этих недостатков лишены элементы, работающие в 2-ой системе. Тем не менее, рассматриваемая система была создана за долго до изобретения вычислительных машин и уходит “корнями” в цивилизацию Инков, где использовались кипу — сложные верёвочные сплетения и узелки.

Двоичная позиционная система счисления имеет основание 2 и использует для записи числа 2 символа (цифры): 0 и 1. В каждом разряде допустима только одна цифра — либо 0, либо 1.

Примером может служить число 101. Оно аналогично числу 5 в десятичной системе счисления. Для того, чтобы перевести из 2-й в 10-ю необходимо умножить каждую цифру двоичного числа на основание “2”, возведенное в степень, равную разряду. Таким образом, число 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510.

Хорошо, для машин 2-я система счисления удобнее, но мы ведь часто видим, используем на компьютере числа в 10-й системе. Как же тогда машина определяет какую цифру вводит пользователь? Как переводит число из одной системы в другую, ведь в её распоряжении всего 2 символа — 0 и 1?

Чтобы компьютер мог работать с двоичными числами (кодами), необходимо чтобы они где-то хранились. Для хранения каждой отдельной цифры применяется триггер, представляющий собой электронную схему. Он может находится в 2-х состояниях, одно из которых соответствует нулю, другое — единице. Для запоминания отдельного числа используется регистр — группа триггеров, число которых соответствует количеству разрядов в двоичном числе. А совокупность регистров — это оперативная память. Число, содержащееся в регистре — машинное слово. Арифметические и логические операции со словами осуществляет арифметико-логическое устройство (АЛУ). Для упрощения доступа к регистрам их нумеруют. Номер называется адресом регистра. Например, если необходимо сложить 2 числа — достаточно указать номера ячеек (регистров), в которых они находятся, а не сами числа. Адреса записываются в 8- и 16-ричной системах (о них будет рассказано ниже), поскольку переход от них к двоичной системе и обратно осуществляется достаточно просто. Для перевода из 2-й в 8-ю число необходимо разбить на группы по 3 разряда справа налево, а для перехода к 16-ой — по 4. Если в крайней левой группе цифр не достает разрядов, то они заполняются слева нулями, которые называются ведущими. В качестве примера возьмем число 1011002. В восьмеричной — это 101 100 = 548, а в шестнадцатеричной — 0010 1100 = 2С16. Отлично, но почему на экране мы видим десятичные числа и буквы? При нажатии на клавишу в компьютер передаётся определённая последовательность электрических импульсов, причём каждому символу соответствует своя последовательность электрических импульсов (нулей и единиц). Программа драйвер клавиатуры и экрана обращается к кодовой таблице символов (например, Unicode, позволяющая закодировать 65536 символов), определяет какому символу соответствует полученный код и отображает его на экране. Таким образом, тексты и числа хранятся в памяти компьютера в двоичном коде, а программным способом преобразуются в изображения на экране.

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

8-я система счисления, как и двоичная, часто применяется в цифровой технике. Имеет основание 8 и использует для записи числа цифры от 0 до 7.

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

Шестнадцатеричная система широко используется в современных компьютерах, например при помощи неё указывается цвет: #FFFFFF — белый цвет. Рассматриваемая система имеет основание 16 и использует для записи числа: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B. C, D, E, F, где буквы равны 10, 11, 12, 13, 14, 15 соответственно.

Помимо рассмотренных позиционных систем счисления, существуют и другие, например:
1) Троичная
2) Четверичная
3) Двенадцатеричная

Позиционные системы подразделяются на однородные и смешанные.

Однородные позиционные системы счисления

Определение, данное в начале статьи, достаточно полно описывает однородные системы, поэтому уточнение — излишне.

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

К уже приведенному определению можно добавить теорему: “если P=Q n (P,Q,n – целые положительные числа, при этом P и Q — основания), то запись любого числа в смешанной (P-Q)-ой системе счисления тождественно совпадает с записью этого же числа в системе счисления с основанием Q.”

Смешанными системами счисления также являются, например:
1) Факториальная
2) Фибоначчиева

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

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

Преобразование в десятичную систему счисления

Пример: 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510

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

Записав все остатки снизу вверх, получаем итоговое число 17. Следовательно, 1510 = 178.

Преобразование из двоичной в восьмеричную и шестнадцатеричную системы

В качестве примера возьмем число 10012: 10012 = 001 001 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ) = (0+0+1) (0+0+1) = 118

Для перевода в шестнадцатеричную — разбиваем двоичное число на группы по 4 цифры справа налево, затем — аналогично преобразованию из 2-й в 8-ю.

Преобразование из восьмеричной и шестнадцатеричной систем в двоичную

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

Для примера рассмотрим число 458: 45 = (100) (101) = 1001012

Перевод из 16-ой в 2-ю — преобразуем каждый разряд шестнадцатеричного числа в двоичное 4-х разрядное число делением на 2, недостающие крайние разряды заполняем ведущими нулями.

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

Преобразование осуществляется также, как и для целых частей, за исключением того, что цифры числа умножаются на основание в степени “-n”, где n начинается от 1.

Преобразование дробной части двоичной системы в 8- и 16-ую

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

Пример: 1001,012 = 001 001, 010 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ), (0*2 2 + 1*2 1 + 0*2 0 ) = (0+0+1) (0+0+1), (0+2+0) = 11,28

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

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

Для примера переведем 10,62510 в двоичную систему:
0,625*2 = 1,25
0,250*2 = 0,5
0,5*2 = 1,0
Записав все остатки сверху вниз, получаем 10,62510 = (1010), (101) = 1010,1012

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *