|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
||||||
Запись констант в шестнадцатеричной системе23.08.2019, 14:16. Показов 10878. Ответов 39
Метки нет (Все метки)
Сейчас изучаю библиотеки связанные с блютуз и вот такая интересная штука
почти везде используется 16-теричная система для записи в переменную ,зачем и почему? вот примеры
0
|
||||||
| 23.08.2019, 14:16 | |
|
Ответы с готовыми решениями:
39
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 23.08.2019, 18:40 | |
|
ReYalp,
Ну если вам удобно записывать в десятичной системе счисления, то можно и так, ограничений же нет. У вас возник конкретный вопрос на который был дан ответ. А действовать согласно данным ответам или нет - решать конечно же вам. К тому же в вашем случае 0-9 не подойдёт, там числа двузначные
1
|
|
|
Злостный нарушитель
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
|
|
| 23.08.2019, 18:43 | |
|
ReYalp, Допустим, к LPT-порту присоединена планка из 8 светодиодов, а через переменную uint8_t lpt1 можно читать и писать значения порта (от 0 (всё диоды выключены) до 255 (все диоды светятся)). Допустим, что начальное значение на порту = 51 (4 диода горят, 4 - не горят)
Напиши кусок программы, который: а) гасит диод д1, б) зажигает диоды д2 и д3, ц) состояния диодов д4 и д5 изменяет на противоположное. Номера диодов: 0 ≤ дi ≤ 7. ------ Сделаешь - поймёшь глубинный смысл.
1
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 23.08.2019, 18:49 [ТС] | |
|
Verevkin, та писал я в универе на ассемблере ,я понимаю "глубинный смысл" ,просто в даном случае НЕ БЫЛО понятно зачем такой подход,ведь здесь нету ни диод и ничего другого,теперь я понял,спасибо
Добавлено через 1 минуту Verevkin, и даже в С++(или С) имел дело с битами,это все понятно
0
|
|
|
Злостный нарушитель
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
|
||
| 23.08.2019, 18:51 | ||
|
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 23.08.2019, 18:53 [ТС] | |
|
Verevkin, ну я уже понял что к чему и для чего такой подход,спасибо
0
|
|
|
Комп_Оратор)
|
|
| 24.08.2019, 18:32 | |
|
ReYalp, четыре бита это 16 (24) и следовательно байт кодируется парой 16-ричных чисел. Для 32 (слово в нашем обыденном понимании) - две праы. Их часто пишут через двоеточие типа A4:FC. Это стандартный подход кодировать байты парой 16-ричных разрядов. Четыре бита и еще четыре бита. Это придумано финикийскими пиратами. Минимальная штурмовая лодка имела по четыре весла с каждой стороны. Трудность была в том, что ещё не было латинского алфавита. То есть пришлось заставить римлян его создать. А цифры потибрили у арабов. Удобно даже для конспирации.
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||||||||||||
| 24.08.2019, 22:36 | |||||||||||||||||||
|
интерес представляет значение бит в числе, а не само число. когда ты видишь запись вида:
если бы там обычные десятичные циферки стояли бы, тогда этот массив 8 битных чисел так бы и воспринимался: как просто массив 8ми битных чисел. почему сразу не двоичная система? потому что запись была бы длиннее. и в кучке нуликов и единичек легко ошибиться. в смысле: используют более простую запись вида: 1 << Nоперация сложения флагов - это конечно какой то бред. использовать магические числа - тоже дикость. цивилизованные люди используют цивилизованные константы:
1. сами по себе запись очень легкая при написании: не нужно думать над фактическим значением флага. если бы в примере выше использовалась 16-тиричная система, и нужно было бы добавить ещё один флаг, пришлось бы думать/высчитывать: чему равно 1 << 4 в 16-тиричной системе?а нафига утруждать свой мозг какими то расчетами, когда можно сразу же тупо так и записать:
знай себе: увеличивай на единичку: 1<<4и пофиг каким будет итоговое значение константы. 2. лайф-хак. вот есть интовая переменная, которая содержит какие то флаги. и вот втыкаешь ты в отладчике, и что ты видишь? какую то непонятную циферку. и тебе совершенно не очевидно: так какие флаги то включены? а вот если бы ты использовал цивилизованный способ, как я обрисовал выше, тогда любой цивилизованный отладчик, показал бы тебе флаги красиво: фокус в том, что обычный int для отладчика - просто какое то число. компилятор не телепат. он понятия не имеет: флаги там, или что. но отладчики в курсе трюка с enumведь все возможные значения enum-констант известны заранее. поэтому, несложно догадаться, что переменная типа enum хранит набор флагов. и красиво отобразить их значения. так почему же многие люди используют обычные 16тиричные инты, вместо простых и красивых enum 1<< N ?а хз. может просто не раздуплили, что запись вида: 1<< N - проще.а про лайф-хак с enum просто не знают.
1
|
|||||||||||||||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 24.08.2019, 22:45 | ||
|
как выглядит голимая 16тиричная фигня в двоичном виде. когда люди видят маску, им важно её говорящее имя, а не значение. для любителей есть православный bitset
0
|
||
|
Злостный нарушитель
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
|
|||
| 24.08.2019, 23:26 | |||
|
0
|
|||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|||||||
| 24.08.2019, 23:39 [ТС] | |||||||
0
|
|||||||
|
Комп_Оратор)
|
||
| 24.08.2019, 23:54 | ||
|
1
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 25.08.2019, 00:00 [ТС] | |
|
IGPIGP, и еще никогда не задумывался что значит 0x в начале?
0
|
|
|
Комп_Оратор)
|
||
| 25.08.2019, 00:12 | ||
1
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 25.08.2019, 00:23 [ТС] | |
|
IGPIGP, а если серьезно?
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 25.08.2019, 00:32 | |
|
ReYalp,
x - это от слова heXadecimal - шестнадцатеричный. А 0 в начале - это синтаксический костыль, чтобы можно было продолжать считать такой литерал числом (если мы уберем 0, то получим идентификатор, т.к. он начинается с буквы, по правилам С).
2
|
|
|
Комп_Оратор)
|
||
| 25.08.2019, 00:44 | ||
|
Это всё можно считать пруфом, так что я не выдумал ни чего. Может чуть приукрасил только.
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 25.08.2019, 00:47 [ТС] | |
|
IGPIGP, интересно,а у этого пирата был компьютер?
0
|
|
|
Комп_Оратор)
|
||
| 25.08.2019, 00:51 | ||
|
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 25.08.2019, 00:53 [ТС] | |
|
IGPIGP, а что за ОС у него была?
0
|
|
|
Комп_Оратор)
|
||
| 25.08.2019, 01:05 | ||
|
ReYalp, сейчас придут центурионы и разгонят пиратов по всей
1
|
||
| 25.08.2019, 01:05 | |
|
Запись в бинарный файл в шестнадцатеричной системе
Заменить каждый элемент списка на его запись в шестнадцатеричной системе счисления Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 6. Питон реализация энилоджиковской модели, картинка про Центральную часть будущей модели
anaschu 26.06.2026
Етить. ИИ мне на основе моего старого файла R создал вот эту вот хмерь на пайтоне.
Это уже новая модель, модель сукцессии грибной.
потоки фосфора, азота. Углерода.
5 видов организмов.
Я даже. . .
|
Как замкнутый ядерный цикл решит проблему недостатки фосфора? Био миграция фосфора со дна океана
anaschu 26.06.2026
Биологический лифт: Концепция подъема фосфора со дна океана с помощью ЗЯТЦ
Предлагаю на обсуждение альтернативу тяжелому промышленному бурению океанического дна. Вместо сложной инженерии мы можем. . .
|
сукцессия 5
anaschu 26.06.2026
ПЛАН РАЗРАБОТКИ математической модели сукцессии микоризных систем
Переход AM → EcM (Endo + ErM) · Шумилов А. С. · ИФХиБПП РАН · Пущино · 2026
. . .
|
сукцессия 4
anaschu 25.06.2026
Более детализированный план разработки
План доработки модели динамики микоризных симбиозов (EcM с гистерезисом)
Цель: Реализовать логику переключения между эрикоидным (ErM) и эктомикоризным. . .
|
|
сукцессия 3
anaschu 25.06.2026
Примерный план работ по модели
|
сукцессия 2
anaschu 25.06.2026
параметризировочная калибровочная таблица будущей модели
|
Многофункциональное здание: как одно здание порождает конфликты требований, которые никто не планировал (мат мет мод 29)
anaschu 23.06.2026
Многофункциональное здание:
как одно здание порождает конфликты требований,
которые никто не планировал
Материалы для обсуждения с МГСУ · 2026
Рисунки внутри приложенного ворд файла.
Что за. . .
|
28. Конкретное развертывание плана номер 1 из поста номер 27
anaschu 22.06.2026
Можно ли из модели получить конкретные строительные требования?
Честно — напрямую из текущей модели такие ответы не получить. Но цепочка логики есть, и она не такая длинная.
Где разрыв
. . .
|