-4

Я пишу техническую документацию и описываю формат для 7-битного режима адресации I2c. Это также относится к 7-битному кодированию ASCII, но это примечание.

I2c использует 7 бит (или 10 битов, которые здесь не обсуждаются) для адресации подчиненного устройства. За 7-битным адресом следует еще один бит, чтобы подчиненный мог прочитать или записать.

Восемь битов передаются при отправке адреса, но в действительности это 7 бит плюс бит направления (R/w #).

Мой вопрос: если 0x используется для описания основания 16, шестнадцатеричный, восьмибитный байт, что используется для описания основания 15, (ну, пятнадцатеричный?)семь битов? Может быть, слово байт здесь тоже неверно.

Я знаю, что 0x также используется для описания 16-битных слов, но логически они на самом деле представляют собой два 8-битных байта вместе, поэтому 0x чувствует себя хорошо.

Примечание: здесь я получил слово quindecimal http://mathforum.org/library/drmath/view/60405.html

Отметка.

2 ответа2

2

Вы не совсем правы. Мы используем 0x чтобы указать числа, выраженные в шестнадцатеричном, основание 16. Прекрасно использовать 0x перед числами любой длины, если вы выражаете их в базе 16.

Если вы видите "0x1", это похоже на 1. Это может быть один бит. Это может быть байт. Это может быть произвольной длины. Никакая конкретная длина не подразумевается "0x".

2

Base15 не означает 7-битный байт. Понятия не имеют никакого отношения ...

7-битный байт - это просто так. Байт, в котором старший бит не используется.
Нет ничего плохого в использовании шестнадцатеричной записи с префиксом 0x для отображения значений, хранящихся в таких 7-битных байтах, при условии, что вы даете понять, что допустимы только 7 бит. (Другими словами: от 0x0 * до 0x7 *, цифры от 0x8 * и выше не используются.)

Насколько мне известно, нет никаких специальных обозначений для этого.
Я программирую уже более 30 лет, и в те времена эти 7-битные системы встречались гораздо чаще, чем сегодня. Если бы для этого было специальное обозначение, я бы столкнулся с ним в какой-то момент, но никогда не встречал.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .