No.57 数値を2進数で格納するレジスタがある。
このレジスタに正の整数xを設定した後,"レジスタの値を2ビット左にシフトして,xを加える"操作を行うと,レジスタの値はxの何倍になるか。
ここで,あふれ(オーバフロー)は,発生しないものとする。
このレジスタに正の整数xを設定した後,"レジスタの値を2ビット左にシフトして,xを加える"操作を行うと,レジスタの値はxの何倍になるか。
ここで,あふれ(オーバフロー)は,発生しないものとする。
⭕️
❌
💾
| 🖊 | ☑️ |
| ⭕️ | [[ AnswerCalc[0] ]] % | A | [[ AnswerCalc[1] ]] |
|
|
|
|
|
|
|
|
2進数のビット列を左にnビットシフトするのは、2n倍するのと同じことです。
例えば 1010(2)は10進数で表すと10です。これを2ビット左シフトすると、10 1000(2)となり10進数で40です。
この問題では左に2ビットした後、元の数(x)を加えているので、22+1 で元の数の5倍になります。
例えば 1010(2)は10進数で表すと10です。これを2ビット左シフトすると、10 1000(2)となり10進数で40です。
この問題では左に2ビットした後、元の数(x)を加えているので、22+1 で元の数の5倍になります。
💾
✔️
| [[ d.CommentTxt ]] |
| < | > |
| 🥇 |