Как зашифровать слово в бинарный код. Кодирование текстовой информации

Результат уже получен!

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

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

Тогда число 6372 можно представить в следующем виде:

6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.

Рассмотрим вещественное десятичное число 1287.923. Пронумеруем его начиная с нуля позиции числа от десятичной точки влево и вправо:

Тогда число 1287.923 можно представить в виде:

1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .

В общем случае формулу можно представить в следующем виде:

Ц n ·s n +Ц n-1 ·s n-1 +...+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +...+Д -k ·s -k

где Ц n -целое число в позиции n , Д -k - дробное число в позиции (-k), s - система счисления.

Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления - из множества цифр {0,1}, в шестнадцатеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.

Таблица 1
Система счисления
10 2 8 16
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

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

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

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

С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.

Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:

1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125

Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:

Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:

Здесь A -заменен на 10, B - на 11, C - на 12, F - на 15.

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

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

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

Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:

159 10 =10011111 2 .

Пример 5 . Переведем число 615 из десятичной СС в восьмеричную СС.

615 8
608 76 8
7 72 9 8
4 8 1
1

При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:

615 10 =1147 8 .

Пример 6 . Переведем число 19673 из десятичной системы счисления в шестнадцатеричную СС.

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 - D. Следовательно наше шестнадцатеричное число - это 4CD9.

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

Рассмотрим вышеизложенное на примерах.

Пример 7 . Переведем число 0.214 из десятичной системы счисления в двоичную СС.

0.214
x 2
0 0.428
x 2
0 0.856
x 2
1 0.712
x 2
1 0.424
x 2
0 0.848
x 2
1 0.696
x 2
1 0.392

Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .

Следовательно можно записать:

0.214 10 =0.0011011 2 .

Пример 8 . Переведем число 0.125 из десятичной системы счисления в двоичную СС.

0.125
x 2
0 0.25
x 2
0 0.5
x 2
1 0.0

Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:

0.125 10 =0.001 2 .

Пример 9 . Переведем число 0.214 из десятичной системы счисления в шестнадцатеричную СС.

0.214
x 16
3 0.424
x 16
6 0.784
x 16
12 0.544
x 16
8 0.704
x 16
11 0.264
x 16
4 0.224

Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:

0.214 10 =0.36C8B4 16 .

Пример 10 . Переведем число 0.512 из десятичной системы счисления в восьмеричную СС.

0.512
x 8
4 0.096
x 8
0 0.768
x 8
6 0.144
x 8
1 0.152
x 8
1 0.216
x 8
1 0.728

Получили:

0.512 10 =0.406111 8 .

Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:

159.125 10 =10011111.001 2 .

Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.

Поскольку является наиболее простой и соответствует требованиям:

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

Ссылки

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

Wikimedia Foundation . 2010 .

Смотреть что такое "Бинарный код" в других словарях:

    2 битный код Грея 00 01 11 10 3 битный код Грея 000 001 011 010 110 111 101 100 4 битный код Грея 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 Код Грея система счисления, в которой два соседних значения… … Википедия

    Код сигнальной точки (англ. Signal Point Code (SPC)) сигнальной системы 7 (SS7, ОКС 7) это уникальный (в домашней сети) адрес узла, используемый на третьем уровне MTP (маршрутизация) в телекоммуникационных ОКС 7 сетях для идентификации … Википедия

    В математике бесквадратным называется число, которое не делится ни на один квадрат, кроме 1. К примеру, 10 бесквадратное, а 18 нет, так как 18 делится на 9 = 32. Начало последовательности бесквадратных чисел таково: 1, 2, 3, 5, 6, 7,… … Википедия

    Для улучшения этой статьи желательно?: Викифицировать статью. Переработать оформление в соответствии с правилами написания статей. Исправить статью согласно стилистическим правилам Википедии … Википедия

    У этого термина существуют и другие значения, см. Python (значения). Python Класс языка: му … Википедия

    В узком смысле слова в настоящее время под словосочетанием понимается «Покушение на систему безопасности», и склоняется скорее к смыслу следующего термина Крэкерская атака. Это произошло из за искажения смысла самого слова «хакер». Хакерская… … Википедия

08. 06.2018

Блог Дмитрия Вассиярова.

Двоичный код — где и как применяется?

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

Начнем с терминологии и выясним, что означит двоичный. Для пояснения вернемся к привычному нам исчислению, которое называется «десятичным». То есть, мы используем 10 знаков-цифр, которые дают возможность удобно оперировать различными числами и вести соответствующую запись. Следуя этой логике, двоичная система предусматривает использование только двух знаков. В нашем случае, это всего лишь «0» (ноль) и «1» единица. И здесь я хочу вас предупредить, что гипотетически на их месте могли бы быть и другие условные обозначения, но именно такие значения, обозначающие отсутствие (0, пусто) и наличие сигнала (1 или «палочка»), помогут нам в дальнейшем уяснить структуру двоичного кода.

Зачем нужен двоичный код?

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

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

Но намного проще обозначить наличие сигнала единицей «1», а его отсутствие – нулем «0». Тогда мы вместо всего этого сможем использовать простой и лаконичный двоичный код: 1011.

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

Условно, символ можно закодировать последовательностью из нескольких знаков. Двумя сигналами (или их отсутствием) можно описать всего четыре варианта: 00; 01;10; 11. Такой способ кодирования называется двухбитным. Но он может быть и:

  • четырехбитным (как в примере на абзац выше 1011) позволяет записать 2^4 = 16 комбинаций-символов;
  • восьмибитным (например: 0101 0011; 0111 0001). Одно время он представлял наибольший интерес для программирования, поскольку охватывал 2^8 = 256 значений. Это давало возможность описать все десятичные цифры, латинский алфавит и специальные знаки;
  • шестнадцатибитным (1100 1001 0110 1010) и выше. Но записи с такой длинной – это уже для современных более сложных задач. Современные процессоры используют 32-х и 64-х битную архитектуру;

Скажу честно, единой официальной версии нет, то так сложилось, что именно комбинация из восьми знаков стала стандартной мерой хранящейся информации, именуемой «байт». Таковая могла применяться даже к одной букве, записанной 8-и битным двоичным кодом. Итак, дорогие мои друзья, запомните пожалуйста (если кто не знал):

8 бит = 1 байт.

Так принято. Хотя символ, записанный 2-х или 32-х битным значением так же номинально можно назвать байтом. Кстати, благодаря двоичному коду мы можем оценивать объемы файлов, измеряемые в байтах и скорость передачи информации и интернета (бит в секунду).

Бинарная кодировка в действии

Для стандартизации записи информации для компьютеров было разработано несколько кодировочных систем, одна из которых ASCII, базирующаяся на 8-и битной записи, получила широкое распространение. Значения в ней распределены особым образом:

  • первый 31 символ – управляющие (с 00000000 по 00011111). Служат для служебных команд, вывода на принтер или экран, звуковых сигналов, форматирования текста;
  • следующие с 32 по 127 (00100000 – 01111111) латинский алфавит и вспомогательные символы и знаки препинания;
  • остальные, до 255-го (10000000 – 11111111) – альтернативная, часть таблицы для специальных задач и отображения национальных алфавитов;

Расшифровка значений в ней показано в таблице.

Если вы считаете, что «0» и «1» расположены в хаотичном порядке, то глубоко ошибаетесь. На примере любого числа я вам покажу закономерность и научу читать цифры, записанные двоичным кодом. Но для этого примем некоторые условности:

  • байт из 8 знаков будем читать справа налево;
  • если в обычных числах у нас используются разряды единиц, десятков, сотен, то здесь (читая в обратном порядке) для каждого бита представлены различные степени «двойки»: 256-124-64-32-16-8- 4-2-1;
  • теперь смотрим на двоичный код числа, например 00011011. Там, где в соответствующей позиции есть сигнал «1» – берем значения этого разряда и суммируем их привычным способом. Соответственно: 0+0+0+32+16+0+2+1 = 51. В правильности данного метода вы можете убедиться, взглянув на таблицу кодов.

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

Язык, понятный современной технике

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

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

Помимо этого, благодаря простоте «изложения» возможны различные способы записи бинарной информации:HDD дисках ;

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

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

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

Лучше, если вы сами ее мне подскажите;)

До скорых встреч.

Двоичный код - это представление информации в комбинации 2-х знаков 1 или 0, как говориться в программирование есть или нет, истина или лож, true или false. Обычному, человеку трудно понять, как информацию можно представить в виде нулей и единиц. Я постараюсь немного прояснить эту ситуацию.

На самом деле двоичный код - это просто! Например, любую букву алфавита можно представить в виде набора нулей и единиц. Например, буква H латинского алфавита будет иметь такой вид в двоичной системе – 01001000, буква E – 01000101, бука L имеет такое двоичное представление – 01001100, P – 01010000.

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

01001000 01000101 01001100 01010000

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

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

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

Берем нужное число, у меня это будет 5, делим число на 2:
5: 2 = 2,5 есть остаток, значит, первое число двоичного кода будет 1 (если нет - 0 ). Откидываем остаток и снова делим число на 2 :
2: 2 = 1 ответ без остатка, значит, второе число двоичного кода будет - 0.Снова делим результат на 2:
1: 2 = 0.5 число получилось с остатком значит записываем 1 .
Ну а так как результат равный 0 нельзя больше поделить, двоичный код готов и в итоге у нас получилось число двоичного кода 101 . Я думаю, переводить из десятичного числа в двоичное мы научились, теперь научимся делать наоборот.

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

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

101 это 1^2 0^1 1^0.

Что из этого вышло? Мы предали степени числам! теперь по формуле:

(x * 2^y) + (x * 2^y) + (x * 2^y)

где x - порядковое число двоичного кода
y - степень этого числа.
Формула будет растягиваться в зависимости от размера вашего числа.
Получаем:

(1 * 2^2) + (0 * 2^1) + (1 * 2^0) = 4 + 0 + 1 = 5.

История двоичной системы счисления

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

Двоичный код - это представление информации в комбинации 2-х знаков 1 или 0, как говориться в программирование есть или нет, истина или лож, true или false. Обычному, человеку трудно понять, как информацию можно представить в виде нулей и единиц. Я постараюсь немного прояснить эту ситуацию.

На самом деле двоичный код - это просто! Например, любую букву алфавита можно представить в виде набора нулей и единиц. Например, буква H латинского алфавита будет иметь такой вид в двоичной системе – 01001000, буква E – 01000101, бука L имеет такое двоичное представление – 01001100, P – 01010000.

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

01001000 01000101 01001100 01010000

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

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

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

Берем нужное число, у меня это будет 5, делим число на 2:
5: 2 = 2,5 есть остаток, значит, первое число двоичного кода будет 1 (если нет - 0 ). Откидываем остаток и снова делим число на 2 :
2: 2 = 1 ответ без остатка, значит, второе число двоичного кода будет - 0.Снова делим результат на 2:
1: 2 = 0.5 число получилось с остатком значит записываем 1 .
Ну а так как результат равный 0 нельзя больше поделить, двоичный код готов и в итоге у нас получилось число двоичного кода 101 . Я думаю, переводить из десятичного числа в двоичное мы научились, теперь научимся делать наоборот.

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

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

101 это 1^2 0^1 1^0.

Что из этого вышло? Мы предали степени числам! теперь по формуле:

(x * 2^y) + (x * 2^y) + (x * 2^y)

где x - порядковое число двоичного кода
y - степень этого числа.
Формула будет растягиваться в зависимости от размера вашего числа.
Получаем:

(1 * 2^2) + (0 * 2^1) + (1 * 2^0) = 4 + 0 + 1 = 5.

История двоичной системы счисления

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



В продолжение темы:
Windows

Часть вторая : "Важнейшие характеристики каждого семейства процессоров Intel Core i3/i5/i7. Какие из этих чипов представляют особый интерес" Введение Сначала мы приведём...

Новые статьи
/
Популярные