アカウント名:
パスワード:
2の補数と符号無しの表現がこんがらがって2の補数の-1が符号無しの32768に化けたとか?
歴史的経緯で下駄履き(エクセス)表現が使われ続けているのかも。
データベース上では編成数の内部表現が16ビットのエクセス32767になっていて、表示部にデータを渡す前に、32767を減算しておく実装だったり。
で、なぜか編成数に0xFFFFが入っていた。(特殊値かミスオペ)ここから32767を減算すると0x8000 になる。表示部はこれを16ビットでの2の補数として解釈したため、 -32768 になった。そして5文字しか表示幅がない仕様だったので、先頭の - が消えた。「32768」の出来上がり。
って、単にエクセス32767で0xFFFFを解釈するだけで32768だわ。深く考えすぎた。
きっと、合わせ技一本みたいなバグばかり目にしてきたせいだ…
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家
2の補数 (スコア:1)
2の補数と符号無しの表現がこんがらがって2の補数の-1が符号無しの32768に化けたとか?
内部値が下駄履き表現なんじゃないか? (スコア:3, 興味深い)
歴史的経緯で下駄履き(エクセス)表現が使われ続けているのかも。
データベース上では編成数の内部表現が16ビットのエクセス32767になっていて、
表示部にデータを渡す前に、32767を減算しておく実装だったり。
で、なぜか編成数に0xFFFFが入っていた。(特殊値かミスオペ)
ここから32767を減算すると0x8000 になる。
表示部はこれを16ビットでの2の補数として解釈したため、 -32768 になった。
そして5文字しか表示幅がない仕様だったので、先頭の - が消えた。
「32768」の出来上がり。
Re:内部値が下駄履き表現なんじゃないか? (スコア:3, すばらしい洞察)
って、単にエクセス32767で0xFFFFを解釈するだけで32768だわ。
深く考えすぎた。
きっと、合わせ技一本みたいなバグばかり目にしてきたせいだ…