• 締切済み

論理シフト

hashioogiの回答

  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.1

1011を右に1ビットだけ論理シフトすると、0101だと思います。 2ビット論理シフトすると0010になると思いますけど。

suns
質問者

お礼

すみません問題文を間違えて勘違いしておりました。 ただご回答ありがとうございます。

関連するQ&A

  • 算術シフトと論理シフトの違いは?

    「コンピュータはなぜ動くのか 知っておきたいハードウエア&ソフトウエアの基礎知識」書籍内のP61のところにある「表3.1 Z80 CPUの主な命令」の表の「演算命令」の欄に 「SLA:算術左シフトをする」 「SRA:算術右シフトをする」 「SRL:論理右シフトをする」 というのがあるのですが、この「算術シフト」と「論理シフト」はどう違うのでしょうか? 「シフト」と言うと 「データを右にずらす。」 「データを左にずらす。」 というイメージがあるのですが、これと似たようなものなんでしょうか? わかりやすく教えてください。できればわかりやすい「例え」で教えてくれたほうが幸いです。 よろしくお願いいたします。

  • 論理シフトについて

    コンピュータの論理シフトについて質問があります。 シフトしてオーバーフローした場合は、コンピュータ内部においては演算結果が反映されているのでしょうか? 例えば、8ビット表記で (10100001)_2 =(161)_10 で左に一桁シフトしたとすると (01000010)_2 =(66)_10 という表記になると思うのですが、このようなシフトをすると値が小さくなってしまう という考え方をすればいいのでしょうか? 回答よろしくおねがいします。

  • C言語で確実に論理右シフトをする方法。

    算術右シフトと論理右シフトをC言語にて実装しようとしています。 『ハッカーのたのしみ』にある論理右シフトを用いて算術右シフトを作る方法を使おうと思っているのですが、C言語で確実に論理右シフトするにはどうすればよいのでしょうか。 int x; (unsigned int) x >>= n; とするとgccではゼロ拡張してくれるようなのですが、 use of cast expressions as lvalues is deprecated というWarningが出ます。 この方法が確実とは思えませんし、 unsigned int xx; xx = x; も処理系依存と聞きます。 出来ればWarningが出ない形で解決したいのですが、どうすればよいのでしょうか。 教えてください。

  • シフト演算で質問です

    1バイトの 10010111を右に1シフトすると2^-1になるはずですが 151から75となり 2^-1になっていません。 なぜそうなるのでしょうか? これでは正確な演算を行うことができません。。。 よろしくお願いします! あと、論理シフトと算術シフトの使い分けもできれば教えていただきたいです!

  • 算術シフトについて

    10010010(2)を 左に二桁の算術シフト演算について いくらやってもテキストの解答と合いません(10100100) どうやったらでるのでしょうか? また左右の論理シフト演算、右算術シフト演算 の結果はそれぞれどうなるのでしょうか? また

  • 算術・論理シフト演算はどんな時に使うのか?

    算術・論理シフト演算は何の為にあるのでしょうか?そもそもどんな時に使うのでしょうか? わかりやすく教えてください。できればわかりやすい「例え」で教えてくれたほうが幸いです。 よろしくお願いいたします。

  • 循環シフト。

    (ABCD)16 を右へ3ビットシフトした結果を16進数で表した場合の答えは BCDAだと間違っているのでしょうか? 循環シフトってはみ出た部分を前にもってくるのでこれであってるはずなのですが。

  • シフト演算子について・・・意味がわかりません(T_T)

    左シフト演算子<<は最上位ビットの上位を削除して最下位に0を追加、 右シフト演算子>>は最下位ビットが削除されて、最上位ビットに最上位ビットと同じ値が補充される、 論理右シフト>>>は最下位ビット削除され、最上位に0が補充される。 と、ここまではわかりました・・・ ある問題で int n = -1>> 31; でnはいくつになるか?というのがあったんですが、 解説の意味がわかりません。 回答はー1です。 「>>演算子によるシフトでは符号ビットが拡張される」 意味がわかりません・・・(@_@) 「>>>演算子であったなら、符号ビットがゼロになるのでN=1となる」 え・・・???!!! ふごーびっと??? シフト演算子ですから、 「-1の31こ右にビットをシフトする」 んだな・・・と思ったところ、 まったくどう考えてよいのかわからず、 回答を見たところ、余計わからなくなりました。 だれかたすけてください(T_T)

    • ベストアンサー
    • Java
  • 算術シフト演算が成り立つ理由がイマイチ・・・

    算術シフト演算で右シフトにしても左シフトにしてもシフトで空いたビットに符号ビットと同じ物を入れたり0を入れたり、溢れたビットを破棄したり・・・ というのがどうして成り立つのかがイマイチわかりません。 手元の本を見てもWebで探してもそういうことは細かく書かれていなくてよくわからないのです。 レポートで書かなければいけないのにこのままでは答えが出るのが間に合いそうもなく助けを借りたいと思い質問させて頂きました。 どなたかわかる人が居ましたらよろしくお願いします。

  • 正しい答え、論理的思考、心

     ちょっと、質問が漠然としているかもしれないのですが、  「どれぐらいの自信を持って回答してますか?」(http://oshiete1.goo.ne.jp/qa4637216.html)という質問などを見ていて、僕は反対に質問者について考えていたのですけれど、質問者の基本的なスタンスは、自分のわからないことに対して、納得したという感じの、主観的な答えの選び方をしよう、というものだと思うのですが、哲学には論理があって感情はないという話(というか、そんなこと)を聞いたことがあります。  それで、まず聞いてみたいのは、 1.それは本当のことですか? 論理だけがあって、考えるというのは、論理(的思考)で行われるものだ。答えの正しさは論理の正しさによる。  そうすると、 2.質問者が「質問それ自体」に対する正しい答えを選ぶためには、質問者自身にあらかじめそういう思考の(仕方の)用意が必要なのではないか?  あるいは、僕が本当に聞きたいのはこうかもしれません。 3.論理とは何ですか? 論理的な思考をするにはどうすればいいのですか? 何を心掛けるべきですか? 4.哲学はよく役には立たないとか言われますけれど、僕も本当にたまに、考えることに対する誰かの本気さを感じると、これは何か他のことには別に役に立たなそうだとか思っているのですが、哲学が論理でするものだとして、哲学と論理は別のものですか? 論理というのは役に立ちそうだという感じがしているので、だからきっと、そういう思考の仕方を身につけたいと思うのでしょうが。  でも、感情がなくて考える、というのは、僕にはまったく未知の方法なので、今一歩踏み込めないでいます。反対に、生まれ持ってそういう仕方でしか考えることのできない人というのがいると思うのですが、そういう人にとって、だから考えることがそうであるのは自明のことなのだろうと想像するのですが、僕にも論理的思考ができるようになるでしょうか?  暇なときにでも回答などして頂ければ幸いです。