Бинарные, шестнадцатеричные и восьмимерные целые числа являются наиболее распространенными числами, обычно используемыми в области компьютерных наук и интеллектуальных наук.
Пробовали ли вы отладки скомпилированной программы C, вы бы либо посмотрели на простые шестнадцатеричные инструкции или инструкции по сбору наряду с шестнадцатеричным эквивалентом. Некоторые люди настолько технически подсчитаны, что знают, что они делают, просто уставившись на шестнадцатеричную, альтернативно называемую гексдумпом. Некоторые поймут, что делает шестнадцатеричный, только когда увидит эквивалентный код сборки. Я не буду лгать, в любом случае некоторые не знают, что происходит — сборка безумно, это может сделать вас слишком 😂😂.
Забавный факт — это; Вам не нужно отлаживать скомпилированную программу C или делать обратную инженерию, прежде чем вам нужно будет понять эти три прекрасных номеров. Вы могли бы быть просто случайным программистом Бинарная манипуляция Как битовые маски, смещение, включение и выключение битов, чтобы прийти к осознанию того, что вам нужно знать, как работают эти численные системы.
Бинарные целые числа, такие как другие цифры, написаны слева направо — наиболее значимый до наименее значительного бита.
10001011 -> 139 ^ ^ ^ ^ ^ least significant bit most significant bit
Я преобразовал это двоичное число в его десятичное, менее чем за 10 секунд, так же, как я писал, просто смотрел на него
Хитрость
Вы должны знать это, если вы когда -нибудь работали с бинарными номерами
1 | 20 | 1 |
10 | 21 | 2 |
100 | 22 | 4 |
1000 | 23 | 8 |
10000 | 24 | 16 |
100000 | 25 | 32 |
1000000 | 26 | 64 |
10000000 | 27 | 128 |
100000000 | 28 | 256 |
1000000000 | 29 | 512 |
10000000000 | 210 | 1024 |
100000000000 | 211 | 2048 |
1000000000000 | 212 | 4096 |
Сила 0 - 8
(1 бит — 9bits), то есть 1 - 256
, может быть достаточно, чтобы узнать. По крайней мере, для основных бинарных расчетов.
Я думаю, вы уже заметили шаблон. Да, давайте предположим 2 0 как основное состояние. Каждое бинарное целое число, которое, по крайней мере, немного включено, имеет это в них. Итак, есть 2 0 В 2, 4, 8, …, 2 n Анкет
Шаблон
Каждый номер, кроме нуля, имеет
1
Готовное состояние в его наиболее значимом бите, так как каждое число содержит 2 0 АнкетКоличество нулей
0
которые следуют за1
Из наиболее значительного бита сила 2. Так 2 1 2 .Количество битов в 2 n номер
n + 1
, потому что возможный результатn
Количество битов варьируется от 0 до 2 n -1, а не от 1 до 2 n , для всех не подписываемых целых чисел.
Давайте выберем несколько цифр, чтобы сделать десятичное целое число, скажем,
13
АнкетИз нашей таблицы давайте выберем ближайший номер к этому,
8
, 2 3 2 АнкетУ нас есть переменная
темп
, в бинарном. Остальная часть5
АнкетБлижайший номер к
5
Из таблицы4
, 100 2 АнкетПоскольку номер
5
, мы могли бы просто сказать, что остаток1
и добавить его в 100 2 , который дает 101 2 Анкет В качестве альтернативы, вы можете включить первый бит от выключения с наименее значительного бита (самая правая сторона) и выключить бит справа от того, что вы включили, если есть.Итак, мы добавляем
5
к8
И мы получаем13
Давайте выберем несколько битов, чтобы сделать бинарное целое число, скажем,
10010011
АнкетРазбейте кусочки с самой правой стороны и замените любой кусочек, который вы взяли на
0
В исходном номере11
,остаток
10000
,остаток
10000000
,остаток
Добавьте все: 128 + 16 +.
Что -то, что вам нужно знать еще раз, это странный конец n
Количество битов, то есть 2 n -1 Вот еще одна таблица для этого.
1 | 1 | 21 — 1 |
11 | 3 | 22 — 1 |
111 | 7 | 23 — 1 |
1111 | 15 | 24 — 1 |
11111 | 31 | 25 — 1 |
111111 | 63 | 26 — 1 |
1111111 | 127 | 27 — 1 |
11111111 | 255 | 28 — 1 |
111111111 | 511 | 29 — 1 |
1111111111 | 1023 | 210 — 1 |
11111111111 | 2047 | 211 — 1 |
111111111111 | 4095 | 212 — 1 |
По крайней мере, вы должны знать это с 1 до 255.
Надеюсь, вам понравилось это 😍. Вы можете избавиться здесь и следовать за мной на Твиттер
Оригинал: «https://dev.to/calebpitan/working-with-binary-like-decimal-4kp2»