8ビットでは0x、7ビットでは何が使用されますか?[閉まっている]


-4

技術文書をいくつか書いて、I2c 7ビットアドレッシングモードの形式を説明しています。これはASCII 7ビットエンコーディングにも関連していますが、それは補足です。

I2cは7ビット(またはここでは説明しない10ビット)を使用してスレーブデバイスをアドレス指定します。7ビットのアドレスの後には、スレーブに読み取りまたは書き込みを指示する別のビットがあります。

アドレスを送信するときに8ビットが送信されますが、実際には7ビットに方向ビット(R / w#)を加えたものです。

私の質問:0xを使用して16進数、16進数、8ビットバイトを記述する場合、15進数を記述するために何を使用しますか(5進表記?)、7ビットバイトですか?ここでワードバイトも間違っているかもしれません。

16ビットワードの記述にも0xが使用されることは知っていますが、論理的には、実際には2つの8ビットバイトが一緒になっているため、0xは問題ありません。

注:ここからquindecimalという単語を取得しましたhttp://mathforum.org/library/drmath/view/60405.html

マーク。


1
ビットはバイナリです。0xは16進数で、バイナリではありません。2の累乗であるため、うまくマップされます。
ダニエルB

そうそう、1桁の16進数は8ではなく4ビットにマッピングされるので、あなたが達成しようとしていることはまったく得られません。
ダニエルB

2
ビット数と基数(ベース)を混同しています。 「いくつかの技術文書を書いています...」 -次に、「7ビットエンコーディング」に適切な句読点を使用する必要があります。「7エンコーディング」や「ビットエンコーディング」ではなく、「7ビットエンコーディング」です(つまり、「7」と「ビット」が一緒になるため、ハイフンで区切ります)。
おがくず

ドキュメントを読みやすくするために、16進表記を使用し、値が7ビットエンコーディングであることを明確にする必要があります。16進数は人間にとって存在します。コンピューターは気にしません。格納されている7ビットデータ構造が7ビットのみを格納している場合でも、コンピューターは特定のサイズのレジスターに値を格納しようとしています
Ramhound

回答:


2

あなたはそれがまったく正しくありません。0x16進数の16進数で表現された数値を示すために使用します。16進数で表現して0xいる限り、任意の長さの数値の前に使用しても問題ありません。

「0x1」が表示される場合は、1が表示されているようです。1ビットである可能性があります。それはバイトかもしれません。任意の長さにすることができます。「0x」によって特定の長さは暗示されません。


2

Base15は7ビットバイトを意味しません。概念はまったく関係ありません...

7ビットのバイトはまさにそれです。最上位ビットが使用されていないバイト。
7ビットのみが有効であることを明確にすれば、0xプレフィックス付きの16進表記を使用して、そのような7ビットバイトに格納されている値を表示することに問題はありません。(言い換えると、0x0 *から0x7 *の場合、0x8 *以上の数字は使用されません。)

私の知る限り、これには特別な表記はありません。
私は30年以上プログラミングを続けてきましたが、今日よりもはるかに一般的なこれらの7ビットシステムを使用しています。これに特別な表記法があれば、ある時点でそれに出会うはずでしたが、一度も見たことはありませんでした。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.