Site Loader

HEX, DEC, BIN должны быть понятны кодеру.

Три системы счисления.

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

Машина «думает» байтами. Байт состоит из 8 бит. Бит может содержать одно значение: 0 или 1. Так что в принципе, неплохо иметь представление и о восьмеричной системе счисления.Однако машинный код отображается в различных редакторах в виде шестнадцатеричного значения — оно более удобно для восприятия, так что всё же остановимся на трёх обязательно необходимых программисту системах счисления.

Двоичная система счисления — основа мироздания.

Вы помните Даосский символ Инь и Янь? Он состоит из двух цветов, из двух понятий: чёрного и белого, мужского и женского, единицы и нуля. Согласно Даосской философии весь мир сформирован именно с помощью двух противоположных

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

ли герой компьютерной игры, что весь его мир состоит всего из двух цифр или это только мы такие прозорливые :)?

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

Двоичная система счисления аппретирует только двумя цифрами: Единицей

и Нулём (Инь и Янь). Привычная для нас система счисления — десятеричная. Если все цифры до десяти состоят из различных одиночных символов (от нуля до девятки), то десять отображается уже двумя символами — единицей и нулём, расположенных

в определённой последовательности (10 — единица перед нулём).

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

В шестнадцатеричной системе счисления одним символом отображаются числа от нуля до шестнадцати. Чтобы не сочинять новых отображений цифр,
решили использовать буквы латинского  алфавита: A, B, C, D, E, F.

Для большей понятности  — внизу приведена таблица соответствия цифр трём системам счисления.

DEC BIN HEX Десятичная Двоичная Шестнадцатиричная 0 0 0 1 1 1 2 10 2 3 11 3 4 100 4 5 101 5 6 110 6 7 111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F 16 10000 10 17 10001 11 18 10010 12 ….

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

DEC         BIN         HEX

Десятичная  Двоичная    Шестнадцатиричная

0 0 0

1 1 1

2 10 2

3 11 3

4 100 4

5 101 5

6 110 6

7 111 7

8 1000 8

9 1001 9

10 1010 A

11 1011 B

12 1100 C

13 1101 D

14 1110 E

15 1111 F

16 10000 10

17 10001 11

18 10010 12

.

Запоминать соответствия цифр нет необходимости. В состав Windows любой версии входит программа «калькулятор» — calc.exe. Запустите её, переключитесь в программистский вид (Вид->Программист или Alt+3) и да пребудет с вами сила!

Калькулятор программиста: HEX, DEC, OCT, BIN.

Три системы счисления — практическое использование.

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

Шестнадцатеричный (HEX) код удобен для современных процессоров, которые фактически развиваются на основе 16-ти разрядного процессора для персональных компьютеров Intel i8086. В исходных текстах программ практически всех языков программирования цифра обозначает по умолчанию число в десятичной системе счисления (DEC).

Десятичная система счисления более удобна (хотя и не всегда) при написании кода программ, шестнадцатеричная — неотъемлемая часть отладки, взлома, реверсивного программирования.

Двоичная система счисления (BIN) используется в основном при расстановке флагов определённых стилей объектов Windows (стили окон), но об этом попозже. Рассматривая 16 битное число в виде двоичного мы получаем великолепную возможность получить крохотный по размеру набор 16 флагов, где 1 — флаг установлен 0 — флаг снят (например, шестнадцатеричное число 4 000 соответствует двоичному 0100 0000 0000 0000 — установлен второй флаг, остальные сняты; шестнадцатеричное число 3000 соответствует двоичному числу 0011 0000 0000 0000 — установлены третий и четвёртый флаги, остальные сняты ).

Если мы хотим обозначить принадлежность числа к 16-тиричной системе счисления, то:
1. Ассемблер — добавляем к числу постфикс h (H), например: 100h = 256, 10H=16. Иногда для понимания того, что мы имеем дело с числом, в качестве префикса ставят 0 (ноль).
2. Си (С++) к числу добавляется суффикс 0x (0X).

Например: 0x100 = 100h = 0100h = 256, 0x10 = 10H = 010H = 16

Хакерский редактор Hacker Viewer (Hiew) .

Для визуального восприятия шестнадцатеричного кода воспользуемся замечательным простым, но достаточно функциональным DOS редактором Hacker Viewer (Hiew). Вы найдёте его в папке D:\UTILS\HIEW\ (я надеюсь, что наш архив программ DOS-1.rar уже скачан и DOSBox установлен и запущен).

Запускаем HIEW (Hacker Viewer).

Инструкцию по пользованию Hiew для хакеров от Криса Касперского вы найдёте в папочке readme. Пользоваться редактором просто и удобно.

Откроем с помощью Hiew нашу программу PRG.COM (выбор файлов — F9). При помощи F4 выбираем режим отображения информации HEX (как вы уже знаете, шестнадцатеричный режим). Можете с помощью F4 или Enter по переключаться между режимами отображения.

Переключение режимов отображения в Hacker Viewer.

Обратите внимание на положение Decode (декодирование). Вам это ни о чём не говорит? Да, да, да в Hiew имеется встроенный дизассемблер и даже ассемблер! Можно внести изменения в ассемблерный код, не выходя из редактора и сохранить изменения.
Исполняемый файл останется рабочим — гениальная программа с поразительными возможностями для своего времени!

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

Наша первая программа в шестнадцатеричном виде.

Указатель является одним из основополагающих понятий в системе программирования. Основы понимания работы с указателем рассмотрим попозже.

Пересчет единиц, таблиц, расчетов

  • физика
    • Мощность (erg/s, mW, W, PS, hp, kW, MW, GW)
    • время (tp, fs, ps, dCs, ns, μs, ms, s, min, h, d, w, m, y, century, millenium)
    • давление (Pa, kg/m², hPa, mmHg, kPa, PSI, kg/cm², bar, atm, MPa)
    • длина (fm, pm, Å, nm, μm, mm, cm, in, dm, ft, yd, m, km, mi, n.
      m., lea, AU, ly, pc)
    • масса (mg, g, dag, oz, lb, kg, q, t)
    • объем (mm³, ml, cu in, fl oz, dl, l, gal, cu ft, hl, bl, cu yd, m³)
    • плотность (mg/m³, g/m³, lb/cu yd, kg/m³, mg/cm³, oz/gal, lb/cu ft, lb/gal, g/cm³, lb/cu in)
    • площадь (mm², cm², sq in, dm², sq ft, sq yd, m², a, acre, ha, km², sq mi)
    • сила (dyn, mN, pdl, N, lbf, kp, kN, MN)
    • скорость (fph, fpm, m/min, km/h, fps, MPH, kn, m/s, Ma, C)
    • температура (°Ra, K, °F, °Rø, °C, °Ré)
    • энергия (J, eV, cal, kJ, BTU, Wh, kcal, MJ, MeV, kWh, GJ, GeV, MWh, toe)
  • математика
    • системы счисления (bin, oct, dec, hex)
  • компьютеры
    • объем данных (b, B, kb, kib, kB, kiB, Mb, Mib, MB, MiB, Gb, Gib, GB, GiB, Tb, Tib, TB, TiB, Pb, Pib, PB, PiB)
    • скорость соединения (bps, B/s, kbps, kibps, kB/s, kiB/s, Mbps, Mibps, MB/s, MiB/s, Gbps, Gibps, GB/s, GiB/s, Tbps, Tibps, TB/s, TiB/s, Pbps, Pibps, PB/s, PiB/s)

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

  • Развлечения и поп-культура
  • География и путешествия
  • Здоровье и медицина
  • Образ жизни и социальные вопросы
  • Литература
  • Философия и религия
  • Политика, право и правительство
  • Наука
  • Спорт и отдых
  • Технология
  • Изобразительное искусство
  • Всемирная история
  • Этот день в истории
  • Викторины
  • Подкасты
  • Словарь
  • Биографии
  • Резюме
  • Популярные вопросы
  • Обзор недели
  • Инфографика
  • Демистификация
  • Списки
  • #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. От полёта на Луну до управления космосом — мы исследуем широкий спектр тем, которые подпитывают наше любопытство к космосу!

Содержание

  • Введение

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

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

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

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

alexxlab

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

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