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

Как объяснить двоичную систему счисления детям

Как компьютер считает

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

Для того чтобы в общих чертах понять, как думает компьютер, начнём с самого начала. Компьютер, по сути, – это много всякой электроники, собранной вместе в правильном порядке. А электроника (до того, как к ней добавили программу) понимает только одно: включена она или выключена, есть сигнал или нет сигнала.

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

Этот язык нулей и единиц называют ещё двоичной системой счисления – потому что в ней всего две цифры. Наша привычная система счисления – десятичная, в ней десять цифр (0, 1, 2, 3, 4, 5, 6, 7, 8, 9). Но есть и множество других – восьмеричная, пятеричная, одиннадцатиричная и какая угодно ещё.

У нас с вами нет цифры «десять», правда? Число 10 состоит из двух цифр – 1 и 0.

Точно так же в пятеричной системе счисления не будет цифры «5», только 0, 1, 2, 3 и 4.

Посчитаем в пятеричной системе: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14, 20, 21, 22, 23, 24, 30, 31, 32, 33, 34, 40, 41, 42, 43, 44, 100 (!!!), 101, 102 и так далее. Можно сказать, что как система счисления называется, такой цифры в ней и нет. В нашей десятичной нет цифры «10», в пятеричной нет цифры «5» (и всех, которые после неё), в восьмеричной – «8» и так далее.

А в шестнадцатиричной «16», например, есть! Поэтому нам шестнадцатиричную систему понять ещё сложнее. Давайте посчитаем в шестнадцатиричной:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F, 20, 21, 22…97, 98, 99, 9A, 9B, 9C, 9D, 9E, 9F, A0, A1, A2… F7, F8, F9, FA, FB, FC, FD, FE, FF, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 10A, 10B, 10C и так далее.

Двоичная система счисления, впрочем, тоже выглядит странновато для непривычного взгляда:

0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111, 10000, 10001…

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

В компьютерных программах часто используют восьмеричную и шестнадцатиричную системы: компьютеру легко их понять (потому что 8=2*2*2, 16=2*2*2*2, а с двоичной системой компьютер знаком изначально), а для людей это удобно, потому что поближе к привычной десятичной.

Как переводить числа из одной системы счисления в другую

Чтобы понять принцип, будем, как мы с вами любим, разбираться на конфетах.

И на конфетах мы с вами будем переводить число 33 в восьмеричную систему счисления. Мы решим, что единицы – это сами конфеты, а десятки – это коробки, в каждой из которых лежит по десять конфет. Вот и получится, что 33 – это 3 коробки по 10 конфет и ещё 3 конфеты где-то сбоку.

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

Из 33 получится 4 полных восьмеричных коробочки и 1 конфета останется сама по себе, так как 33/8=4 (ост. 1). То есть 33=8*4+1 – так в восьмеричной системе счисления получается число 41.

33 в десятичной – это 41 в восьмеричной. Это одно и то же число, просто разложенное по разным коробочкам, переведённое в разное основание.

Количество конфет не поменялось, мы просто считали их по-разному!

Двоичная система, как мы уже выяснили, более странная и непривычная для человеческого взгляда. Давайте попробуем перевести 33 в двоичную – получится аж 16 коробочек по 2! И что же делать? Писать 16 как-то странно, помня о том, что в двоичной системе есть только ноль и единица, а шестёрки, которая нам нужна для шестнадцати, совершенно точно нет!

Посмотрим на нашу десятичную систему. В ней мы считаем десятки – 10, 20, 30, 40, 50, 60, 70, 80, 90 – а когда у нас набирается десять десятков, мы достаём большую коробку – 100.

У нас 100 – это 10*10, 1000 – 10*10*10, 10 000 – 10*10*10*10 и так далее. Для других систем счисления это работает точно так же! В восьмеричной системе 100=8*8, 1000=8*8*8; в двоичной 100=2*2, а 1000=2*2*2; а в шестнадцатиричной (есть и такая, помните?) 100=16*16, 1000=16*16*16.

Здесь нам пригодятся степени. Если вы их ещё не проходили в школе, не пугайтесь, степени – это очень просто.

Число в степени – это число, сколько-то раз умноженное на само себя. То есть 53=5*5*5 (пять в третьей степени – это пять, три раза умноженная сама на себя: 5*5*5), или 85=8*8*8*8*8 (восемь в пятой степени – это восемь, пять раз умноженная на саму себя: 8*8*8*8*8).

Если мы вспомним про наши 10 000=10*10*10*10 в десятичной и 1000=8*8*8 в восьмеричной, то можно легко заметить, что сколько нулей, столько раз и умножаем на само себя. Другими словами, количество символов в числе минус один – это степень, в которую надо возвести основание. В числе 1000 у нас четыре символа, значит умножать надо 4–1, то есть 3 раза. Если основание 10, то тысяча – это 10, три раза умноженная сама на себя: 10*10*10. Если основание 8, то тысяча – это 8, три раза умноженная сама на себя: 8*8*8.

Обо всём этом мы заговорили, пытаясь перевести 33 в двоичную систему. Просто так поделить это число на коробочки по 2 оказалось затруднительным. Но если вспомнить про наши сотни-тысячи, можно задуматься: а ведь в двоичной 100=2*2, 1000=2*2*2, 10 000=2*2*2*2 и так далее.

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

Теперь, глядя на табличку, мы видим, что 33=25+1, то есть 33=2*2*2*2*2+1. Вспоминаем – сколько раз умножаем, столько будет нулей – то есть наше 2*2*2*2*2 в двоичной системе будет 100000. Не забудем оставшуюся в стороне единичку, и получится, что 33 в десятичной – это 100001 в двоичной. Правильно и красиво это записывают так:

3310=1000012

Давайте (чтобы совсем хорошо понять) переведём в двоичную систему число 15.

  1. В первую очередь – смотрим в табличку.

а) Какое самое близкое к 15 число в ней? Нет, 16 не подходит, оно больше, а нам нужно самое близкое, которое меньше. Получается, что это 8, то есть 23, то есть 2*2*2.

б) Восемь конфет из 15 разобрали, осталось – 15-8 – семь. Какое ближайшее число из таблички? Нет, восемь снова не подойдет, см. выше. Подойдет четыре, то есть 22, то есть 2*2.

в) Четыре из семи конфет разобрали, осталось – 7-4 – три. Из таблички понимаем, что самое близкое число – 2, то есть 21, то есть просто 2.

г) Три минус два – осталась 1 конфета, тут уже табличка не понадобится. В таблички такого рода можно не смотреть, когда ваш остаток меньше основания, а наша единица точно меньше двойки.

  1. Собираем всё найденное в табличке вместе: 15=23 + 22 + 21 + 1, оно же: 15=2*2*2 + 2*2 + 2 + 1.
  2. В двоичной системе 2*2*2=1000, 2*2=100, 2=10, помните? И у нас получается 1000+100+10+1, то есть 1111.
  3. Итак,

1510=11112

Когда просто смотришь на все эти шаги, кажется, что это просто свалка из Кучи Разных Странно Написанных Цифр. И запутаться во всём этом в первый раз – нормально. И во второй, и в третий. Просто попробуйте сделать это ещё и ещё раз – по шагам, как написано выше, и всё получится.

И наоборот это тоже работает! Например, число 110101012 – как из него сделать понятное десятичное? Точно так же, при помощи таблички. Пойдем с конца:

1*20+0*21+1*22+0*23+1*24+0*25+1*26+1*27=

1*1+0*2+1*4+0*8+1*16+0*32+1*64+1*128=

1+0+4+0+16+0+64+128=213

То есть,

110101012 = 21310

Вот примерно так компьютер понимает привычные нам числа.

Когда смотришь на это в первый раз, кажется, что это, во-первых, совершенно непостижимо, а, во-вторых, вообще не сработает. Поэтому сейчас мы с вами сделаем немножко математической магии, чтобы убедиться, что системы счисления – это такая же реальная вещь, как, например, задача «раздать пятерым детям пятнадцать печенек поровну».

Итак, возьмем пример 15+6 и решим его в разных системах счисления. Понятно, что в нашей, десятичной, получится 21. А что выйдет, например, в восьмеричной?

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

Итак, получилось, что 15=81+7.

В восьмеричной системе логика точно такая же, как, например, в двоичной: 83 – это 1000, 82 – это 100, 81 – это 10. Получилось, что:

1510=178

Напомню, наш пример был 15+6. 15 мы перевели в восьмеричную систему, как же перевести 6? Она меньше 8, нашего основания, поэтому ответ – оставить как есть. Наш пример сейчас выглядит так:

1510+610=178+68

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

Как это делается? Так же, как и в десятичной, но надо помнить, что десяток в восьмеричной системе – это восемь, а не десять, и что 8 и 9 в ней не существует.

Когда мы считаем в десятичной системе, по сути, мы делаем так:

15+6=15+5+1=20+1=21

Попробуем проделать тот же фокус в восьмеричной системе:

178+68=178+18+58=208+58=258

Почему 17+1? Потому что 7+1=8, а 8 – это наш десяток! В восьмеричной системе 7+1=10, а значит, 17+1=20. Если на этом месте ваш мозг начинает бить тревогу и рассказывать, что здесь что-то не так, вернитесь в начало статьи, где мы с вами считали в разных системах счисления.

Теперь наш пример выглядит как

1510+610=178+68=258

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

В восьмеричной, как вы, наверное, уже догадались, число 258  – это две восьмерки и пять единиц. То есть 258=2*8+5=2110.

Итак, наш пример целиком:

1510+610=178+68=258=2110

Получилось точно такое же 21, какое вышло у нас в самом начале, когда мы посчитали 15+6 привычным нам способом в десятичной системе.

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

Кодирование информации в информатике

Мы обсуждили, как компьютер понимает числа. Они получаются из других чисел – двоичных, которые компьютер понимает. А как быть с буквами? Картинками? Играми?

Какие вообще бывают виды кодирования информации в науке обращения с компьютером – информатике?

Тут надо на секунду задуматься, как общаются сами люди. Мы используем слова, из слов делаем предложения, из предложений – текст, рассказ, диалог. Но чтобы сделать слово, мы используем буквы, которых всего-навсего 33 штуки!

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

Но мы делаем из букв слова по определённым правилам, а словами обозначаем предметы, свойства, действия, эмоции, фантазии. Буквы – это кубики, из которых мы строим слова. А слова – это код, которым мы обозначаем всё, что встречается в нашей жизни, чтобы потом об этом кому-нибудь рассказать.

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

Но сейчас мы с вами поговорим о более конкретных и практических кодах. И начнём с того, как компьютер понимает буквы.

Раз компьютер знает только цифры, значит и буквы он видит через цифры. Это, примерно, как если бы мы букву А записали как 1, Б как 2, В как 3, и так далее.

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

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

 Р§РµР”овек сейчас СѓРІРёРґРёС‚ Дишь то, что ожидает увидеть.

Это компьютер ошибся с кодировкой. Что такое кодирование в информатике? Так обычно называют присвоение каждому символу (букве, знакам препинания и так далее) определённого кода согласно специальной табличке. Кодировка – это способ, которым зашифровывает и расшифровывает буквы компьютер, можно сказать, табличка, которую он выбирает. Табличек у него на такой случай много, и надо знать, по какой расшифровывать, иначе получится белиберда.

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

Кодировочная Таблица 1:

Кодировочная Таблица 2:

Зашифруем с вами фразу «Пароль – три зелёных свистка». Зашифровывать мы будем по первой таблице, а расшифровывать – по второй.

Первая буква – П. В первой таблице у неё номер 17. Дальше буква А. У неё номер 1. Продолжите сами и проверьте себя, правильно ли у вас получится!

А получилась в итоге вот такая строчка:

17-1-18-16-13-30 38 20-18-10 9-6-13-6-15-29-23 19-3-10-19-20-12-1

Теперь попробуем расшифровать её при помощи второй таблицы.

Во второй таблице цифра 17 у буквы И, цифра 1 у точки и так далее (расшифруйте сами).

У нас получилось:

И.йзех э лйв(жфо к?вклд

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

Точно так же с фразой и с текстом вроде «Р§РµР”РѕРІРµРє сейчас» – так получается, когда компьютер пытается расшифровать текст не по той таблице, по которой он был зашифрован. Ещё в таких случаях говорят, что «в тексте неправильная кодировка». Сам текст от этого не испортился, просто программе где-нибудь в настройках надо указать, какой кодировкой воспользоваться (обычно это utf8, или UNICODE, или как в этом случае Windows-1251).

Давным-давно, когда компьютеры были большими, а жёсткие диски в них –маленькими, придумали кодировку ASCII (читается как «аскИ»).

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

Когда в компьютерах придумывают что-то новое, однажды бывает очень важно, чтобы кто-то сказал: «А теперь ВОТ ЭТО мы все делаем одинаково». Например, весь вай-фай в мире работает примерно одинаково, поэтому почти любой телефон может подключиться почти к любой точке вай-фай.

Точно так же произошло и с кодировочной таблицей. Мы с вами раньше уже убедились, что она обязательно должна быть одинаковая у отправителя и получателя, и этой одинаковой таблицей стала ASCII аж в 1963 году.

Сначала всё было замечательно, но потом компьютеры стали становиться меньше и удобнее, ими стали пользоваться разные люди, в том числе не знающие английского. А русский, например, алфавит (который также называют «кириллица») в ASCII не входит. Как быть? Куда бежать? И в 1991 году был придуман UNICODE (читается как «Юникод» или «Уникод» – почти как «Универмаг», но не магазин).

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

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

Когда вы сохраняете файл в том же «Блокноте», вы можете выбрать кодировку и при выборе заметить, что их гораздо больше, чем мы разобрали в статье.

В заключение давайте поговорим, где какая кодировка нужна.

Обычно выбором кодировки занимаются люди, работающие с компьютерами профессионально – при написании программ, настройки баз данных и т. п. Мы с вами не будем вникать во все тонкости, и рассмотрим этот вопрос в общих чертах:

Windows-1251

Как видно из названия, это основная кодировка операционных систем семьи Windows. Когда вы точно знаете, что все компьютеры, которые будут работать с файлами, используют Windows – она отличный выбор. Если же нет, могут возникнуть проблемы с невидимыми символами. Потому что Windows-1251 их считает служебными, а многие другие кодировки решают, что это такие буквы непонятные, и в результате случается неразбериха.

ASCII

Старая, но надёжная. Подойдёт, если ваш текст на английском, а компьютер, где надо открыть файл – очень, очень старый.

UNICODE

Это рекомендуемая кодировка для всех систем! Если друг прислал вам файл, а у вас в нём кракозябры, попросите его пересохранить файл с кодировкой unicode, и, скорее всего, проблема будет решена.

UTF-8

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

Итак, кодированием текста в информатике обычно называют способ компьютера перевести текст в понятный ему вид по одной из общепринятых табличек. Если файл был сохранён в одной кодировке, а открыт в другой – обычно получается белиберда вместо текста.

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

Как можно увидеть, криптография – это не только наука про тайны и не только детская игра. У этой науки есть множество простых практических точек приложения, и если ребёнок знаком с её концепциями, то многое, что может испугать, сбить с толку и привести в отчаяние, для него будет просто задачей, к которой надо найти правильное решение.

Двоичная система счисления: пресловутые нолики и единички

О чем речь? Можно с уверенностью назвать двоичную систему счисления одной из основных, которые используются в вычислительной технике. А значит, привычные нам компьютер и смартфон применяют 0 и 1 для расчетов.

На что обратить внимание? Стоит отметить, что такая «популярность» – это дань традиции, заложенной праотцом вычислительных машин Блезом Паскалем. И все же, порой, нужно переводить показатели двоичной системы в 10-ю или 16-ю. Как же это сделать?

В статье рассказывается:

  1. Общепринятые системы счисления
  2. Числа, используемые в двоичной системе счисления
  3. Сложение, вычитание и умножение в двоичной системе счисления
  4. Как переводить числа в двоичной системе счисления в десятичную
  5. Алгоритм перевода из двоичной системы счисления в шестнадцатеричную
  6. Пройди тест и узнай, какая сфера тебе подходит:
    айти, дизайн или маркетинг.

    Бесплатно от Geekbrains

Общепринятые системы счисления

Человечество в ходе своего развития со временем стало нуждаться в способах подсчета. Нужно было считать, например, количество добычи или убитых врагов из других племен. И эта нужда у древних людей только возрастала. Поначалу пользовались абстрактными понятиями типа «нисколько», «один», «много». Затем в употребление вошла «пара», означающая два каких-то предмета. Уже одно это нововведение существенно упростило жизнь древнему человеку.

Общепринятые системы счисления

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

С течением времени возникла необходимость в символьном обозначении любого количества больше единицы. В итоге древними египтянами были впервые придуманы знаки, обозначающие 1, 5 и 10.

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

Любая система счисления принадлежит к одной из двух категорий:

Позиционные СС

Конкретное значение числа определяется не только цифрами, но и их позицией. Сюда относят арабскую систему, где первый разряд справа отведен для единиц, второй разряд справа — для десятков, третий разряд справа — для сотен и т. д. Таким образом, для записи числа 475 необходимо в крайней правой позиции расположить пятерку (пять единиц), после нее — семерку (семь десятков) и затем — четверку (четыре сотни). Позиционными считаются также системы счисления с основаниями (2, 8, 16).

Непозиционные СС

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

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

Впервые позиционная система счисления была введена в Вавилоне. Примечательно, что она была шестнадцатеричная. К 19 веку распространение получила двенадцатеричная система.

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

Непозиционные СС

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

Числа, используемые в двоичной системе счисления

Состав двоичной системы счисления — цифры 0 и 1. Основание равно 2. В крайней правой позиции числа указывается количество единиц, левее — количество двоек, затем количество четверок и т. д.

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

10112 = 1*23 + 0*2*2+1*21+1*20 =1*8 + 1*2+1=1110

Как известно, двоичная система счисления используется вычислительной техникой для хранения информации, а также для преобразования данных в графические изображения. В свою очередь обработка двоичного кода требует предварительного размещения каждой цифры внутри особой электронной схемы (триггера). Эта схема может пребывать в одном из двух состояний — «ноль» или «единица».

Отдельное число, состоящее из нескольких цифр, сохраняется группой триггеров — регистром. Оперативная память компьютера фактически является совокупностью таких регистров.

Топ-30 самых востребованных и высокооплачиваемых профессий 2023

Поможет разобраться в актуальной ситуации на рынке труда

Подборка 50+ ресурсов об IT-сфере

Только лучшие телеграм-каналы, каналы Youtube, подкасты, форумы и многое другое для того, чтобы узнавать новое про IT

ТОП 50+ сервисов и приложений от Geekbrains

Безопасные и надежные программы для работы в наши дни

pdf 3,7mb

doc 1,7mb

Уже скачали 20099

С точки зрения вычислительной техники любое сохраняемое число представляет собой машинное слово, арифметические и логические операции над которым выполняет арифметико-логическое устройство (АЛУ). Чтобы компьютеру было проще работать с регистрами, они нумеруются (или наделяются адресами).

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

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

Специальные программы (драйверы клавиатуры и экрана) преобразуют эти сигналы в читаемый вид путем обращения к кодовой таблице. Например, стандарт Unicode позволяет закодировать таким образом 65536 символов. Именно так используется двоичная система счисления в информатике — нули и единицы преобразуются программным способом в текст и изображения на экране.

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

Далее приведем очевидные достоинства использования двоичного способа представления информации.

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

Недостатки:

  • возможное превращение конечных десятичных дробей в бесконечные двоичные;
  • большее количество занимаемых разрядов по сравнению с десятичной записью;
  • сложность с восприятием записи чисел, поскольку двоичная система счисления — этопредставление только в виде нулей и единиц.

Сложение, вычитание и умножение в двоичной системе счисления

Для того, чтобы складывать числа, пользуются следующей таблицей:

+01
001
1110 (переход в старший разряд)

Таблица вычитания в двоичной системе счисления выглядит так:

01
001
1(взятие из старшего разряда) 10

Точный инструмент «Колесо компетенций»

Для детального самоанализа по выбору IT-профессии

Список грубых ошибок в IT, из-за которых сразу увольняют

Об этом мало кто рассказывает, но это должен знать каждый

Мини-тест из 11 вопросов от нашего личного психолога

Вы сразу поймете, что в данный момент тормозит ваш успех

Регистрируйтесь на бесплатный интенсив, чтобы за 3 часа начать разбираться в IT лучше 90% новичков.

Только до 27 марта

Осталось 17 мест

Умножение выполняется по следующей таблице:

*01
000
101

Как переводить числа в двоичной системе счисления в десятичную

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

ОснованиеНаименование системыАлфавит
2Двоичная0, 1
10Десятичная0, 1, 2, 3, 4, 5, 6, 7, 8, 9
16Шестнадцатеричная0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Как уже упоминалось, двоичная система счисления имеет основание 2. Чтобы перевести число в десятичный формат, можно воспользоваться такой таблицей степеней данного основания:

5122561286432168421

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

В качестве примера переведем число 1011011 двоичной системы счисления в 10-ный формат (число 91):

0*2+1=1>>1*2+0=2>>2*2+1=5>>5*2+1=11>>11*2+0=22>>22*2+1=45>> 45*2+1=91.

А конвертация 101111 в десятичную систему даст число 47:

0*2+1=1>>1*2+0=2>>2*2+1=5>>5*2+1=11>> 11*2+1=23 >> 23*2+1=47

НУЖНА КАРТИНКА

Таким же образом можно переводить и дробные числа. Для примера возьмем 1011010, 101 в двоичной системе счисления. Перевод чисел в десятичную можно осуществлять в таком виде:

1*26 + 0*25 + 1*24 + 1*2 + 0 *22 + 1 * 21 + 0 * 20 + 1 * 2-1 + 0 * 2-2 + 1 * 2-3 = 90,625

Иначе говоря, расчет будет следующим:

1*64+0*32+1*16+1*8+0*4+1*2+0*1+1*0,5+0*0,25+1*0,125 = 90,625

Полученное значение в десятичной системе также высчитывается по таблице:

64321684210,50,250,125
1011010..101
+64+0+16+8+0+2+0+0.5+0+1.125

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

Здесь необходимо выполнить 2 шага:

  1. Перевод числа из двоичной системы в десятичную
  2. Преобразование полученного значения в шестнадцатеричный формат

К примеру, имеется число 1011101 в двоичной системе счисления. Запись чисел для выполнения первого шага осуществляется по формуле:

A2 = an-1 ∙ 2n-1 + an-2 ∙ 2n-2 + ∙∙∙ + a0 ∙ 20

Подставляем значения:

10111012=1 ∙ 26 + 0 ∙ 25 + 1 ∙ 24 + 1 ∙ 23 + 1 ∙ 22 + 0 ∙ 21 + 1 ∙ 20 = 1 ∙ 64 + 0 ∙ 32 + 1 ∙ 16 + 1 ∙ 8 + 1 ∙ 4 + 0 ∙ 2 + 1 ∙ 1 = 64 + 0 + 16 + 8 + 4 + 0 + 1 = 9310

Теперь полученное десятичное число необходимо преобразовать в шестнадцатеричное. Для этого 93 многократно последовательно делим на 16 до тех пор, пока остаток не станет меньше 16.

В процессе деления остатки нужно записывать в обратном порядке. Результатом всех операций будет число 9310=5D16.

НУЖНА КАРТИНКА

Перевод дробных чисел в шестнадцатеричный формат выполняется аналогичным образом — через промежуточный этап перевода в десятичную систему.

Вновь покажем это на примере. Преобразуем двоичное число 10001100.110 сначала в десятичную систему по формуле:

An = an-1 ∙ qn-1 + an-2 ∙ qn-2 + ∙∙∙ + a0 ∙ q0 + a-1 ∙ q-1 + ∙∙∙ + a-m ∙ q-m

Подставляем наши значения:

10001100.1102=1 ∙ 27 + 0 ∙ 26 + 0 ∙ 25 + 0 ∙ 24 + 1 ∙ 23 + 1 ∙ 22 + 0 ∙ 21 + 0 ∙ 20 + 1 ∙ 2-1 + 1 ∙ 2-2 + 0 ∙ 2-3 = 1 ∙ 128 + 0 ∙ 64 + 0 ∙ 32 + 0 ∙ 16 + 1 ∙ 8 + 1 ∙ 4 + 0 ∙ 2 + 0 ∙ 1 + 1 ∙ 0.5 + 1 ∙ 0.25 + 0 ∙ 0.125 = 128 + 0 + 0 + 0 + 8 + 4 + 0 + 0 + 0.5 + 0.25 + 0 = 140.7510

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

Вторым этапом переводим число 140,75 в шестнадцатеричный формат. Это делается в два подэтапа:

  1. Перевод отдельно целой части числа.
  2. Перевод отдельно дробной части числа.

Итак, нам необходимо сначала преобразовать 140 в шестнадцатеричную систему счисления, последовательно деля это число на 16, пока остаток не станет меньше делителя.

После записи остатков в обратном порядке получаем результат: 14010=8C16

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

В нашем случае это будет выглядеть так: 0.75 * 16 = 12.0 (C).

Поскольку после первого же умножения дробная часть обнулилась, дальнейшие итерации прекращаем. Итоговый результат: 0.12 (0.С) или, иначе, 0.75 ∙ 16 = 12.0 (C)

Остался последний этап — соединение преобразованных целой и дробной частей: 140.7510=8C.C16. Это и будет общим решением всей задачи.

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

Рейтинг: 5

( голосов 1 )

Поделиться статьей

Двоичная система счисления | Определение, пример и факты

  • Развлечения и поп-культура
  • География и путешествия
  • Здоровье и медицина
  • Образ жизни и социальные вопросы
  • Литература
  • Философия и религия
  • Политика, право и правительство
  • Наука
  • Спорт и отдых
  • Технология
  • Изобразительное искусство
  • Всемирная история
  • Этот день в истории
  • Викторины
  • Подкасты
  • Словарь
  • Биографии
  • Резюме
  • Популярные вопросы
  • Обзор недели
  • Инфографика
  • Демистификация
  • Списки
  • #WTFact
  • Товарищи
  • Галереи изображений
  • Прожектор
  • Форум
  • Один хороший факт
  • Развлечения и поп-культура
  • География и путешествия
  • Здоровье и медицина
  • Образ жизни и социальные вопросы
  • Литература
  • Философия и религия
  • Политика, право и правительство
  • Наука
  • Спорт и отдых
  • Технология
  • Изобразительное искусство
  • Всемирная история
  • Britannica объясняет
    В этих видеороликах Britannica объясняет различные темы и отвечает на часто задаваемые вопросы.
  • Britannica Classics
    Посмотрите эти ретро-видео из архивов Encyclopedia Britannica.
  • #WTFact Видео
    В #WTFact Britannica делится некоторыми из самых странных фактов, которые мы можем найти.
  • На этот раз в истории
    В этих видеороликах узнайте, что произошло в этом месяце (или любом другом месяце!) в истории.
  • Demystified Videos
    В Demystified у Britannica есть все ответы на ваши животрепещущие вопросы.
  • Студенческий портал
    Britannica — это главный ресурс для учащихся по ключевым школьным предметам, таким как история, государственное управление, литература и т. д.
  • Портал COVID-19
    Хотя этот глобальный кризис в области здравоохранения продолжает развиваться, может быть полезно обратиться к прошлым пандемиям, чтобы лучше понять, как реагировать сегодня.
  • 100 женщин
    Britannica празднует столетие Девятнадцатой поправки, выделяя суфражисток и политиков, творящих историю.
  • Britannica Beyond
    Мы создали новое место, где вопросы находятся в центре обучения. Вперед, продолжать. Просить. Мы не будем возражать.
  • Спасение Земли
    Британника представляет список дел Земли на 21 век. Узнайте об основных экологических проблемах, стоящих перед нашей планетой, и о том, что с ними можно сделать!
  • SpaceNext50
    Britannica представляет SpaceNext50. От полёта на Луну до управления космосом — мы исследуем широкий спектр тем, которые подпитывают наше любопытство к космосу!

Содержание

  • Введение

Краткие факты

  • Факты и сопутствующий контент

Что такое двоичная система?

Система нумерации представляет собой набор символов и правил, с помощью которых мы можем выразить все действительные числа в этой системе. Например, десятичная система , которую мы используем чаще всего в повседневной жизни, использует число 10 в качестве основы и состоит из 10 различных чисел, с помощью которых вы можете представить все остальные: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Это позиционная система и поэтому значение каждого числа меняется в зависимости от его положения (единицы, десятки, сотни и т.д.).

Двоичная система , которая широко известна, потому что это система счисления, используемая компьютерами и другими электронными устройствами, является системой с основанием 2. Это означает, что он использует только две цифры для представления всех своих чисел, и в случае двоичного кода эти два числа равны 0 и 1. Компьютеры используют двоичную систему, потому что они работают только с 9.0142 два уровня напряжения : ВЫКЛ или без наличия электрического заряда (0) и ВКЛ или с наличием электрического заряда (1).

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

Происхождение двоичной системы

Первые описания двоичной системы относятся к 3 веку до н.э. и приписываются древнеиндийскому математику по имени Пингала . Первые представления двоичных чисел встречаются в классических трудах китайского происхождения, в частности, в философском труде « I Ching », который датируется между 1200 и 100 годами н.э. в.

На протяжении последующих столетий мы также можем найти документы других математиков и других мыслителей, которые излагали идеи, связанные с двоичной системой. Например, сэр Фрэнсис Бэкон создал Код Бэкона в начале 17 века, криптографический код, основанный на двоичной системе, в которой для шифрования сообщений использовались буквы A и B, сгруппированные в пятибуквенные комбинации.

Что касается современной двоичной системы, то математическая основа двоичной системы, какой мы ее знаем, была впервые задокументирована в 17 веке немецким математиком Готфридом Вильгельмом Лейбницем . В 1703 году Лейбниц опубликовал статью « Explication de l’Arithmétique Binaire », в которой объяснялось, как числа могут быть представлены с помощью цифр 0 и 1. В то время его исследования не отвечали какой-либо конкретной цели, но с появление первых компьютеров в начале 20-го века, почти 300 лет спустя, можно было понять, как все, что объяснил Лейбниц в своей статье, применялось первыми программистами компьютеров.

Также важно отметить вклад британского математика Джорджа Буля , который в 1854 г. опубликовал статью, в которой подробно описал систему логики, названную Булевой алгеброй, которая началась с теории двоичной системы и была ключ к разработке электронных схем.

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

Можно преобразовать число из одной системы счисления в другую, например, из двоичной в десятичную или наоборот. В первом случае необходимо разложить двоичное число на множители (по основанию 2) и в дальнейшем мы можем преобразовать его в эквивалентное число в десятичной системе. Если у нас есть двоичное число 10111101 и мы хотим преобразовать его в десятичное число, мы должны сначала разложить его на множители, используя число 2 и возведя его в степень, соответствующую каждой цифре, в соответствии с положением, которое она занимает в ряду чисел. В качестве показателей степени мы будем использовать 0, 1, 2, 3… пока не достигнем 7, и мы начнем факторизовать в порядке слева направо, начиная с наибольшей степени. Наконец, мы вычислим сложение и найдем эквивалентное десятичное число, которое в данном случае равно 189.:

10111101 = (1·2 7 ) + (0·2 6 ) + (1·2 5 ) + (1·2 4 ) + (1·2 3 ) + (1·2 3 ) (1·2 2 ) + (0·2 1 ) + (1·2 0 )
10111101 = (128) + (0) + (32) + (16) + (8) + ( 4) + (0) + (1)
10111101 = 189

Чтобы преобразовать целое число из десятичной системы и найти его эквивалент в двоичной системе, мы должны использовать число, которое мы хотим преобразовать (189), в качестве делимого и число 2 в качестве делителя, так как искомое число имеет основание 2.

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

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