一部のデータを NFC タグに保存するプログラムがあります。NFC タグには、メモリ用に数バイトしかありません。また、日付と時刻を分単位 (10 進数) でタグに保存する必要があるため、これを可能な限りメモリ効率の高い方法で保存する必要があります。たとえば、10 進数の 23592786 には 36 ビットが必要ですが、10 進数を base36 値に変換すると、25 ビットのメモリしか必要ありません。
2 に答える
0
最も簡単な方法は、 1970 年 1 月 1 日からの秒数を表すUnix 時間を使用することです。これには通常 32 ビットが必要です。MBo が言ったように、ビット数を 6 分減らすか、分を数えるか、より最近の開始日を選択することで、ビット数を減らすことができます。ただし、業界標準を使用することには利点があります。アプリケーションによっては、約 45 日を表す 2 バイトまで下げることができる場合があります。
于 2014-11-10T06:30:26.733 に答える
0
数値 23592786 には 25 ビットが必要です。これは、この数値のバイナリ表現が 25 ビット長であるためです。日付範囲が限られている場合は、少し節約できます。1 年には約 526000 分が含まれるため、2000 年 1 月 1 日 (任意の開始日) 0:00 からの分単位の間隔は24 ビット (3 バイト) を取り、2031 年までの日付を表します。
于 2014-11-10T05:59:02.490 に答える