プロが教える店舗&オフィスのセキュリティ対策術

進数の計算式が成り立つような問題です。ただし、本計算は8ビット符号付きとする。分からない教えてください。
(26)8+(a)16=−(1A)16=(b)2
(35)8-(c)10=(11111100)2=-(d)10=(e)4

a,b,c,d,eを求めてください。

A 回答 (3件)

確かに「8ビット符号付き」といいながら「マイナス」が付いているのはおかしい。


「マイナス」の付いているものは、それ自体は「符号なし」の数値とみなすことにします。

そうすれば
 (26)8 = (00 010 110)2 = (0001 0110)2 = (16)16
 -(1A)16 = -(0001 1010)2 = (1110 0110)2 = (E6)16
従って
 (a)16 = (D0)16 = (1101 0000)2  ←a, b


(35)8 = (00 011 101)2 = (0001 1101)2
(1111 1100)2 = -(0000 0100)2
従って
 (c)10 = (0010 0001)2 = (33)10   ←c
 -(0000 0100)2 = -(4)10      ←d
 (1111 1100)2 = (11 11 11 00)2 = (3330)4  ←e
    • good
    • 0

>>(a)16を足しています


そんな事は分かってる。
この問題の出題者が支離滅裂だと言う事を言ってる。

(1A)16は16進の1Aだから10進では26。
それにマイナスを付けてるから-26

8ビット符号付きと条件と付けてるから、−(1A)16と言う表現にはなら無い。
(E6)16となるんだ。

さらに(26)8+(a)16で、(26)8は10進では26。
26+(a)16=-26となる訳だから、(a)16は-52
だったら、26 - (a)16と書かないと歩調が合わない。

だから、支離滅裂なんだ。
    • good
    • 0

8ビット符号付き、と言って置きながら−(1A)16って何??


-26を8ビット符号付16進で表すと(E6)16だよ。

設問自体がオカシイ
    • good
    • 0
この回答へのお礼

(a)16を足しています

お礼日時:2023/10/29 23:29

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A