Windows 7計算機でのLshキーとRshキーの使用


9

プログラマーモードのWindows 7電卓のLshキーとRshキーの機能を知っている人はいますか?ビットを左右にシフトすることを意図していると思われるかもしれませんが、そうは思われません。何も起こらないこともあれば、「結果が定義されていません」というメッセージが表示されることもあります。誰かがまだそれを理解していますか?これは既知のバグですか?

私たちがそれをしている間に、適切なリファレンスガイド/ユーザーガイドを備えた優れた計算機の提案はありますか(Windowsヘルプは、どのモードでも、キーの機能に関するヒントを提供していないようです)。


これはパドゥへの対応です。「16」をそのまま使用していたとしましょう。16進数モードであり、「16」は実際には16進数であり、10進数ではないことに注意してください。

回答:


12

LshそしてRsh、それぞれ、左右のシフトを実行します。ボタンを押した後、数値をシフトしたい2進数の数を指定する必要があります。「すべてのボタンの機能」を参照してください。詳細はこちら


ただし、電卓のシフトにはバグがあります。16進モードに移動し、DWORDを選択して10000と入力します。今度は16の右シフトを試してください。答えは1であるはずですが、電卓は0を返します。実際にはさらに奇妙です。同じ手順を試してみてください。ただし、右に8シフトし、再度8シフトします...正解です。同じ数値をもう一度試してみますが、12だけ右にシフトします。もう一度ゼロにします。この電卓をプログラミングした人はプログラマではなかったと思います:-)
Padu Merloti

5
パドゥ、あなたがやっていることは22ビット右にシフトしています!あなたは16進モードで覚えています。;)

0

ユーザーの誤解ほどバグではありません。(電卓のプログラマーもこれに関与していたと思います。)

16進数モードの場合、Lshキーを押した後に入力した数値は10進数ではなく16進数です。

たとえば、ビットを小数点以下23桁にシフトする場合は、1を入力してからLshを押してから23と入力します。ただし、実際に何が起こるかは、35ビットがシフトされることです(23h = 10進数で35)。 )

したがって、本当に10進数の23ビットをシフトしたい場合、入力するマジックナンバー(Lshキーを押した後)は17です。

偶然Lsh 10を1回叩いて16シフトするまで、私はこれに数時間頭をぶつけました。

回避策は、16進モードで数値を入力し、10進モードに切り替え、Lsh(またはRsh)キーを押し、シフトする10進数のビット数を入力し(その後、もちろん=)、16進モードに戻ります。

なんとPITAでしょう。

マーク。

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