【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?

■やりたいこと
・100を左に1ビット(1けた)シフトさせたら2倍になることを確かめたい

■試したこと
・100を2進数へ変換 → 1100100
・左に1ビット(1けた)シフト → 1001000
・1001000を10進数へ変換 → 72

■質問
・どこで間違えているのでしょうか?

A 回答 (4件)

>・1ビット左にずらしたら、一番左を削除して、1番右に0を入れる



たしかに一番左は消えますが、それは8ビット、16ビット、32ビットなどの境界です。
一番左が1の時、これを消したら数字としては成り立ちません。
    • good
    • 0
この回答へのお礼

回答ありがとうございましたー

お礼日時:2014/06/08 11:32

>・1ビット左にずらしたら、一番左を削除して、1番右に0を入れる


桁長が決まっていればそうです。その場合「桁あふれ」が発生するので計算結果が異なります。

桁長が決まっていなければ切り捨てる必要はありません。
    • good
    • 0
この回答へのお礼

回答ありがとうございましたー

お礼日時:2014/06/08 11:32

・100を2進数へ変換 → 1100100


・左に1ビット(1けた)シフト → [1]1001000 ←先頭の1が足りない
・1001000を10進数へ変換 → 72      ←先頭の1=128分足りない

この回答への補足

回答ありがとうございます。

・下記を見て、あふれたビットは捨てる、のだと思い左端の1を削除したのですが、あふれていなかったということでしょうか?
・一定の桁数(?)までは、ただ左にずらすだけ?
・あるいはこれは符号ビット?
http://www.jtw.zaq.ne.jp/kayakaya/new/kihon/text …

自分の認識
・1ビット左にずらしたら、一番左を削除して、1番右に0を入れる
・そんな単純な話ではない?

補足日時:2014/05/11 08:08
    • good
    • 0

>・100を2進数へ変換 → 1100100


>・左に1ビット(1けた)シフト → 1001000
・左に1ビット(1けた)シフト → 11001000
先頭の1がなくなってます。

この回答への補足

回答ありがとうございます。

・下記を見て、あふれたビットは捨てる、のだと思い左端の1を削除したのですが、あふれていなかったということでしょうか?
・一定の桁数(?)までは、ただ左にずらすだけ?
・あるいはこれは符号ビット?
http://www.jtw.zaq.ne.jp/kayakaya/new/kihon/text …

自分の認識
・1ビット左にずらしたら、一番左を削除して、1番右に0を入れる
・そんな単純な話ではない?

補足日時:2014/05/11 08:07
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報