
No.2ベストアンサー
- 回答日時:
例えば、123000を10で割る時、真面目に計算しませんよね。
誰でも「右端の0を取る」つまり、桁を右にシフトしますね。
コンピュータの内部形式は2進法です。だから、「2で割る」とは
桁を右に1桁シフトすることと同じです。
今はCPUが速いので、問題になりませんが、ずっと以前は割り算は
シフトの200倍近い時間を必要とする遅い命令でした。
つまり、「2で割る」を実際の割り算を使ってやるヤツは「間抜け」
ということを意味したのです。また、機械語の除算命令は剰余も
同時に求まります。これを別々に求めるコーディングを見ると
逆上したものです。例:int a = m / 2; int b = m % 2;
閑話休題
「2で割る」は右へ1回シフトするので、余りは切り捨てられる右端の
1桁の値です。つまり、0x01との論理積で求められるのです。
掲題の件は2進法における割り算の考え方を示唆しているのでは
ないでしょうか。
尚、更に昔は乗算、除算という命令もありませんでした。
No.1
- 回答日時:
普通整数除算と言えば、割る数も割られる数も割った結果もすべて整数という意味だと思うが。
つまり余りは一切考えない。例:
6/2 = 3
12/5 = 2 ※2.4じゃない
というか、(L+M)/2=Mじゃ式として意味をなさないわけだが。
代入文 M := (L+M)/2
もしくは
比較文 (L+M)/2 == M
なんだろうけど、前者なら左右逆にすると全く意味が違うし、後者なら(L==M)OR(L==M+1)と同値。
どっちにしても、LもMもループ毎にインクリメントするのであれば不毛な計算に見える。
ただの例として挙げられていてそもそもあまり意味がないのか、
それとも何かメモリの制限された環境でも想定しているのか。。。
まぁ、本題には関係ないか。
# あと、なぜに全角。見た目的に気になってせうがない。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(教育・科学・学問) 小学生の算数の商について 3 2023/03/06 14:11
- 統計学 現在、サイコロが歪んでいるかを調べています。 有意水準は5%(0.05)でサイコロの目は6なので自由 2 2022/07/21 02:12
- 高校 高校化学、気体、温度の有効数字 3 2023/04/02 11:39
- 数学 順序集合における「反射律」の役割について 9 2022/05/09 23:01
- 年末調整 源泉徴収について 生命保険料控除等は自分はないのですがその場合でも年末調整で還付が起こることはあり得 6 2022/10/22 18:38
- その他(学校・勉強) おそらく一般的な数学の質問です、、 ・一括で1000万預けて『30年寝かす』と350万増えて1350 7 2023/08/09 19:08
- 高校 mod 問題 2 2022/08/11 10:19
- C言語・C++・C# C言語 3 2022/10/04 15:07
- 年末調整 基礎控除申告書について 2 2022/11/27 23:47
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
シフトで埋められる値
-
コンピュータが処理できるビッ...
-
マイクロコンピューター制御の...
-
光コンピュータについて
-
CASLIIでかけ算
-
四則演算と比較演算を行う式を...
-
VBAで現れる#は何ですか?
-
ULONGLONGよりも大きい整数を扱う
-
ビットリバース
-
verilog 符号付加減算(最上位...
-
[VBS] 素早くローテート演算したい
-
命令について
-
浮動小数点数の内部表現につい...
-
ビット演算について
-
ライン数とステップ数の違いは?
-
高級言語がアセンブリ言語に比...
-
Z80に関しての宿題なのですが、
-
実行ファイルからソースはみれる?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
ビットシフトってどんな時使うの?
-
C言語で128bitの2進数のビット...
-
シーケンス制御についての質問...
-
PS3に搭載されている"Cell"は、...
-
文字参照は10進数と16進数では...
-
一般のソフトで画像を扱う場合...
-
情報科学の飽和演算、ラップア...
-
エクセルVBAのIf,Then 構...
-
符号無し整数xを右にnビット回転
-
C言語やC++言語でビット毎に値...
-
アクセス(2003)のVBAでビット...
-
verilog 符号付加減算(最上位...
-
浮動小数点数の内部表現につい...
-
命令について
-
visualbasic のコード中で 100...
-
スロースキャンコンピュータ 加...
-
16ビットCPUで32ビットの計算方法
-
整数除算の意味とは?
おすすめ情報