АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

bin_dec_hex - Онлайн в облаке

Запустите bin_dec_hex в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда bin_dec_hex, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


bin_dec_hex - Как использовать двоичную, десятичную и шестнадцатеричную нотацию.

ОПИСАНИЕ


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

Если для вас это звучит загадочно, я только что сказал в цифрах:

0
1
2
3
4
5
6
7
8
9
10
11
12
13

и так далее.

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

«00010» -> «0010» -> «010» -> «10», но не «1».

Это было довольно просто, вы уже это знали. Зачем я это сказал? Ну, компьютеры обычно
не представляют числа с 10 разными цифрами. Они используют только два разных символа,
а именно «0» и «1». Примените те же правила к этому набору цифр, и вы получите двоичный
система нумерации:

0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101

и так далее.

Если вы посчитаете количество строк, вы увидите, что это снова 14 разных чисел. В
числа такие же и означают то же, что и в первом списке, мы просто использовали другой
представление. Это означает, что вы должны знать используемое представление или как оно есть.
называется системой нумерации или базой. Обычно, если мы не указываем явно
Используемая система счисления, мы неявно используем десятичную систему. Если мы хотим использовать любой другой
система нумерации, мы должны прояснить это. Есть несколько широко распространенных методов
Сделай так. Одна из распространенных форм - написать 1010(2) что означает, что вы записали число в его
двоичное представление. Это число десять. Если бы вы написали 1010 без указания
основание, число интерпретируется как одна тысяча и десять с использованием основания 10.

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

Поскольку используемую систему нумерации также называют базовой, мы говорим о числе 1100 по основанию 2,
число 12 по основанию 10.

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

Мы можем использовать двоичную форму при разговоре с компьютерами (... программирование ...), но числа
будут большие представительства. Число 65'535 (часто в десятичной системе)
используется для разделения блоков из трех цифр для удобства чтения) будет записано как
1111111111111111(2) что в 16 раз больше цифры 1. Это сложно и подвержено ошибкам.
Поэтому мы обычно использовали бы другое основание, называемое шестнадцатеричным. Он использует 16 различных
символы. Сначала используются символы из десятичной системы, затем продолжаем с
буквенные символы. Мы получаем 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E и F. Это
система выбрана, потому что шестнадцатеричная форма может быть преобразована в двоичную систему очень
легко (и обратно).

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

Двоичный (2)
Восьмеричный (8)
Десятичные (10)
Шестнадцатеричный (16)

(2) (8) (10) (16)
00000 0 0 0
00001 1 1 1
00010 2 2 2
00011 3 3 3
00100 4 4 4
00101 5 5 5
00110 6 6 6
00111 7 7 7
01000 10 8 8
01001 11 9 9
01010 12 10 A
01011 13 11 B
01100 14 12 С
01101 15 13 Д
01110 16 14 Э
01111 17 15 Ф
10000 20 16 10
10001 21 17 11
10010 22 18 12
10011 23 19 13
10100 24 20 14
10101 25 21 15

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

(2) (8) (10) (16)
11111111 377 255 ФФ

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

Компьютерам (или, скорее, парсерам, работающим на них) будет трудно преобразовать
номер как 1234(16). Поэтому шестнадцатеричные числа указываются с префиксом. Этот
префикс зависит от языка, на котором вы пишете. Некоторые из префиксов - «0x» для C, «$»
для Паскаля, "#" для HTML. Принято считать, что если число начинается с нуля, оно
восьмеричный. Неважно, что используется, если вы знаете, что это такое. Я буду использовать "0x"
для шестнадцатеричного числа, «%» для двоичного и «0» для восьмеричного. Следующие числа являются
то же самое, просто их представление (база) другое: 021 0x11 17% 00010001

Чтобы заниматься арифметикой и преобразованиями, вам нужно понимать еще одну вещь. Это что-то
вы уже знаете, но, возможно, еще не «видите» это:

Если вы запишете 1234 (без префикса, поэтому он десятичный), вы говорите о числе один
тысяча двести тридцать четыре. Что-то вроде формулы:

1 * 1000 = 1000
2 * 100 = 200
3 * 10 = 30
4 * 1 = 4

Это также можно записать как:

1 * 10 ^ 3
2 * 10 ^ 2
3 * 10 ^ 1
4 * 10 ^ 0

где ^ означает «в степени».

Мы используем базу 10 и позиции 0,1,2 и 3. Крайняя правая позиция должна
НЕ умножать на 10. Второе справа следует умножить один раз на
10. Третье справа умножается на 10 два раза. Это продолжается до тех пор, пока
позиции используются.

То же самое и во всех других представлениях:

0x1234 будет

1 * 16 ^ 3
2 * 16 ^ 2
3 * 16 ^ 1
4 * 16 ^ 0

01234 будет

1 * 8 ^ 3
2 * 8 ^ 2
3 * 8 ^ 1
4 * 8 ^ 0

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

% 1010 будет

1 * 2 ^ 3
0 * 2 ^ 2
1 * 2 ^ 1
0 * 2 ^ 0

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

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

Для начала вам нужно знать, сколько позиций будет использовано в другой системе. Для этого вы
необходимо знать максимальное количество используемых вами чисел. Что ж, это не так сложно, как кажется. В
десятичное, максимальное число, которое вы можете сформировать из двух цифр, - «99». Максимум для
три: «999». Следующее число потребует дополнительной позиции. Переверните эту идею, и вы
видите, что число можно найти, взяв 10 ^ 3 (10 * 10 * 10 равно 1000) минус 1 или 10 ^ 2 минус
вариант.

Это можно сделать и для шестнадцатеричного числа:

16 ^ 4 = 0x10000 = 65536
16 ^ 3 = 0x1000 = 4096
16 ^ 2 = 0x100 = 256
16 ^ 1 = 0x10 = 16

Если число меньше 65'536, оно уместится в четырех позициях. Если число больше
чем 4'095, вы должны использовать позицию 4. Сколько раз вы можете вычесть 4'096 из
число без опускания ниже нуля - это первая записанная цифра. Это всегда будет
число от 1 до 15 (от 0x1 до 0xF). Проделайте то же самое с другими позициями.

Попробуем с 41'029. Он меньше 16 ^ 4, но больше 16 ^ 3-1. Это означает, что мы
придется использовать четыре позиции. Мы можем вычесть 16 ^ 3 из 41'029 десять раз, не переходя
ниже нуля. Таким образом, самая левая цифра будет "A", так что у нас есть 0xA ????. Номер
уменьшено до 41'029 - 10 * 4'096 = 41'029-40'960 = 69. 69 меньше 16 ^ 3, но не больше
чем 16 ^ 2-1. Следовательно, вторая цифра - «0», и теперь у нас есть 0xA0 ??. 69 меньше, чем
16 ^ 2 и больше 16 ^ 1-1. Мы можем вычесть 16 ^ 1 (это просто 16) четыре раза и
запишите «4», чтобы получить 0xA04 ?. Вычтем 64 из 69 (69 - 4 * 16), и последняя цифра будет 5 ->
0xА045.

Другой метод наращивает число справа. Попробуем снова 41'029. Поделить на
16 и не используйте дроби (только целые числа).

41'029 / 16 равно 2'564 с остатком 5. Запишите 5.
2'564 / 16 равно 160 с остатком 4. Запишите 4 перед 5.
160/16 равно 10 без остатка. Добавьте 45 к началу 0.
10/16 ниже единицы. Закончите здесь и добавьте 0xA. В итоге получаем 0xA045.

Какой метод использовать - решать вам. Используйте то, что вам подходит. Я использую их оба без
возможность сказать, какой метод я использую в каждом конкретном случае, просто зависит от числа, я думаю.
Дело в том, что некоторые числа будут часто встречаться во время программирования. Если число близко к
один, с которым я знаком, тогда я воспользуюсь первым методом (например, 32'770, что в 32'768
+ 2, и я просто знаю, что это 0x8000 + 0x2 = 0x8002).

Для двоичного кода можно использовать тот же подход. База 2, а не 16, а количество
позиции будут быстро расти. Использование второго метода имеет то преимущество, что вы можете увидеть
очень легко, если вы должны записать ноль или единицу: если вы разделите на два остаток
будет равен нулю, если это четное число, и единице, если это нечетное число:

41029/2 = 20514 остаток 1
20514/2 = 10257 остаток 0
10257/2 = 5128 остаток 1
5128/2 = 2564 остаток 0
2564/2 = 1282 остаток 0
1282/2 = 641 остаток 0
641/2 = 320 остаток 1
320/2 = 160 остаток 0
160/2 = 80 остаток 0
80/2 = 40 остаток 0
40/2 = 20 остаток 0
20/2 = 10 остаток 0
10/2 = 5 остаток 0
5/2 = 2 остаток 1
2/2 = 1 остаток 0
1/2 меньше 0 остаток 1

Запишите результаты справа налево:% 1010000001000101

Сгруппировать по четыре:

% 1010000001000101
% 101000000100 0101
% 10100000 0100 0101
% 1010 0000 0100 0101

Преобразовать в шестнадцатеричное: 0xA045

Сгруппируйте% 1010000001000101 по трем и преобразуйте в восьмеричное:

% 1010000001000101
% 1010000001000 101
% 1010000001 000 101
% 1010000 001 000 101
% 1010 000 001 000 101
% 1 010 000 001 000 101
% 001 010 000 001 000 101
1 2 0 1 0 5 -> 0120105

Итак:% 1010000001000101 = 0120105 = 0xA045 = 41029
Или: 1010000001000101(2) = 120105(8) = A045(16) = 41029(10)
Или: 1010000001000101(2) = 120105(8) = A045(16) = 41029

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

% 1010 +% 0111 -> 10 + 7 -> 17 ->% 00010001

станет

% 1010
% 0111 +
||||
||| + - прибавляем 0 + 1, результат 1, запоминать нечего
|| + --- прибавляем 1 + 1, результат% 10, записываем 0 и запоминаем 1
| + ---- добавить 0 + 1 + 1 (запомнить), результат = 0, запомнить 1
+ ----- добавить 1 + 0 + 1 (запомнил), результат = 0, запомнить 1
нечего добавить, 1 вспомнил, результат = 1
--------
% 10001 - результат, я люблю записывать его как% 00010001

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

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

Для людей с Windows: запустите калькулятор (пуск-> программы-> аксессуары-> калькулятор) и
при необходимости нажмите "Просмотр" -> "Научный". Теперь у вас есть научный калькулятор и вы можете вычислить
в двоичном или шестнадцатеричном формате.

Используйте bin_dec_hex онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    глубокая очистка
    глубокая очистка
    Скрипт Kotlin, уничтожающий все сборки
    кеши из проектов Gradle/Android.
    Полезно, когда Gradle или IDE позволяют
    вниз. Скрипт протестирован на
    макОС, но...
    Скачать глубокую очистку
  • 2
    Подключаемый модуль Eclipse Checkstyle
    Подключаемый модуль Eclipse Checkstyle
    Плагин Eclipse Checkstyle
    интегрирует Java-код Checkstyle
    аудитор в Eclipse IDE. В
    плагин предоставляет обратную связь в режиме реального времени
    пользователь о нарушении ...
    Скачать подключаемый модуль Eclipse Checkstyle
  • 3
    АстрОрзПлеер
    АстрОрзПлеер
    AstrOrz Player — бесплатный медиаплеер.
    программное обеспечение, частично основанное на WMP и VLC.
    плеер выполнен в минималистическом стиле, с
    более десяти цветов темы, а также может
    б ...
    Скачать AstrOrzPlayer
  • 4
    Movistartv
    Movistartv
    Kodi Movistar+ TV является дополнением для XBMC/
    Коди, разрешенный к использованию
    decodificador de los servicios IPTV де
    Movistar интегрирован в один город
    медиацентры ма...
    Скачать киностартв
  • 5
    Code :: Blocks
    Code :: Blocks
    Code::Blocks — это бесплатная программа с открытым исходным кодом,
    кроссплатформенная C, C++ и Fortran IDE
    построен для удовлетворения самых взыскательных потребностей
    своих пользователей. Он разработан, чтобы быть очень
    расширенный ...
    Код загрузки::Блоки
  • 6
    среди
    среди
    Среда или расширенный интерфейс Minecraft
    и отслеживание данных / структуры - это инструмент для
    отобразить обзор Minecraft
    мир, фактически не создавая его. Это
    жестяная банка ...
    Скачать Среди
  • Больше »

Команды Linux

Ad