跳到正文

平成29年度 春期 ITパスポート試験 問72

这道题的解析和你的作答记录。

問72
頻出度★★☆

二つの2進数01011010と01101011を加算して得られる2進数はどれか。ここで,2進数は値が正の8ビットで表現するものとする。

出典 平成29年度 春期 ITパスポート試験 問72
解説

問 72

  • 错误ア

    00110001(十进制为 49)是忽略进位、把各位单独相加(即取异或 XOR)得到的结果。二进制加法需要把进位向上一位进位,而这里没有进位,所以是错误的。

  • 错误イ

    01111011(十进制为 123)是对两个数取逻辑或(OR,各位中只要有一个为 1 结果就为 1)得到的结果,并不是加法。加法会产生进位,因此不会得到这个值。

  • 错误ウ

    10000100(十进制为 132)与正确的和 197(11000101)不一致,是一个错误的值。它是在中途错误处理进位时可能出现的值,并不是正确竖式计算的结果。

  • エ

    正解 用竖式做二进制加法。从最右端的位开始,依次考虑进位(carry)逐位相加。将 01011010 与 01101011 逐位相加:bit0 为 0+1=1;bit1 为 1+1=10,得 0 并向上进位 1;bit2 为 0+0+1=1;bit3 为 1+1=10,得 0 并进位 1;bit4 为 1+0+1=10,得 0 并进位 1;bit5 为 0+1+1=10,得 0 并进位 1;bit6 为 1+1+1=11,得 1 并进位 1;bit7 为 0+0+1=1,结果为 11000101。用十进制验证:01011010=90,01101011=107,两者之和为 197,将其转换成二进制即 11000101,所以正确答案是「エ」。

ここがポイント
  • 二进制加法从右端开始逐位相加,像 1+1=10 那样把进位(carry)进到上一位来计算。
  • 作为验算,可以把二进制数转换成十进制求和(90+107=197),再转换回二进制(11000101),从而可靠地确认结果。
用語
解答問72エ
练这一题

作答记录