OKI431マイクロコントローラーを使用しています。適切なソフトウェアがインストールされたPCと通信できます。永久メモリとして機能するマイクロのI2CバスにEEPROMが接続されています。PCソフトウェアは、このEEPROMの読み取りと書き込みを行うことができます。
BとCの2つの数値を考えてみましょう。それぞれ、2バイトの整数です。BはPCソフトウェアとマイクロの両方に知られており、定数です。Cは、BCが符号付き8ビット整数に収まるようにBに非常に近い数値になります。いくつかのテストの後、Cの適切な値はPCによって決定され、後で使用するためにマイクロのEEPROMに保存されます。
これで、マイクロは2つの方法でCを保存できます。
- マイクロは
two byte
Cを表す全体を保存できます - マイクロはBCを
one byte
符号付き整数として格納でき、後でBとBCからCを導出できます。
負の数の2の補数表現は、現在、ハードウェアメーカーによって広く受け入れられていると思います。それでも私は、負の数はさまざまな方法で表現できるため、2つの異なるアーキテクチャによってアクセスされる記憶媒体に負の数を格納することは個人的には好きではありません。参考までに、431は2の補数も使用します。
負の数はさまざまな方法で表すことができるという頭痛の種を取り除きone byte
、他のチームメンバーが提案した解決策を受け入れる必要がありますか?two byte
または、負の数を処理する必要がないため、ソリューションの決定に固執する必要がありますか?どちらが好きですか、そしてその理由は何ですか?