ホームへ
コンピュータサイエンス1のトップページへ

コンピュータサイエンス1練習問題解答

問題

25を2進数に変換すること(ビット数も考えること)

解答

(25)10 = (16 + 8 + 1)10
= (24 + 23 + 0 × 22 + 0 × 21 + 20)10
= (11001)2

答え: 11001 (5ビット)

問題

500を2進数に変換すること(ビット数も考えること)

解答

(500)10
= (256 + 128 + 64 + 32 + 16 + 4)10
= (28 + 27 + 26 + 25 + 24 + 0 × 23 + 0 × 22 + 0 × 21 + 0 × 20)10
= (111110100)2

答え: 111110100 (9ビット)

問題

255を2進数に変換すること(ビット数も考えること)

解答

(255)10
= (128 + 64 + 32 + 16 + 8 + 4 + 2 + 1)10
= (27 + 26 + 25 + 24 + 23 + 22 + 21 + 20)10
= (11111111)2

答え: 11111111 (8ビット)

問題

135を10桁の2進数に変換すること

解答

(135)10
= (128 + 4 + 2 + 1)10
= (27 + 0 × 26 + 0 × 25 + 0 × 24 + 0 × 23 + 22 + 21 + 20)10
= (10000111)2
= (0010000111)2(10桁)

答え: 0010000111

問題

200を12桁の2進数に変換すること

解答

(200)10
= (128 + 64 + 8)10
= (27 + 26 + 0 × 25 + 0 × 24 + 23 +0 × 22 + 0 × 21 + 0 × 20)10
= (11001000)2
= (000011001000)2(12桁)

答え: 000011001000

問題

001010101010を10進数に変換すること

解答

(001010101010)2
= (0 × 211 + 0 × 210 + 1 × 29 + 0 × 28 + 1 × 27 + 0 × 26 + 1 × 25 + 0 × 24 + 1 × 23 + 0 × 22 + 1 × 21 + 0 × 20)10
= (512 + 128 + 32 + 8 + 2)10
= (682)10

答え: 682

問題

01111000010を10進数に変換すること

解答

(01111000010)2
= (0 × 210 + 1 × 29 + 1 × 28 + 1 × 27 + 1 × 26 + 0 × 25 + 0 × 24 + 0 × 23 + 0 × 22 + 1 × 21 + 0 × 20)10
= (512 + 256 + 128 + 64 + 2)10
= (962)10

答え: 962

問題

0010000111001を10進数に変換すること

解答

(0010000111001)2
= (0 × 212 + 0 × > 211 + 1 × 210 + 0 × 29 + 0 × 28 + 0 × 27 + 0 × 26 + 1 × 25 + 1 × 24 + 1 × 23 + 0 × 22 + 0 × 21 + 1 × 20)10
= (1024 + 32 + 16 + 8 + 1)10
= (1081)10

答え: 1081

問題

「10101010 + 01010101」を計算すること

解答

10101010 +01010101 = 11111111

答え: 11111111(10進数で255)

問題

「11110000 + 01000000」を計算すること

解答

11110000 + 01000000 = 100110000

8ビットの計算なので、「100110000」はオーバーフローし(9桁目が箱に入らずなくなってしまい)、「00110000」になる

答え: 00110000(10進数で48)

問題

「10010010 + 11001100」を計算することb

解答

10010010 + 11001100 = 101011110

8ビットの計算なので、「101011110」はオーバーフローし(9桁目が箱に入らずなくなってしまい)、「01011110」になる

答え: 01011110(10進数で94)

問題

「2進数10110を3倍した数」を計算すること(2009年度ITパスポート春期試験問題)

解答

10110 + 10110 + 10110 = 101100 + 10110 = 1000010

答え: 1000010(10真数だと66, 桁数(ビット数)の指定がないのでオーバーフローは考えない)

問題

「10010を左に4ビットシフトした数」を計算すること

解答

「10010を左に4ビットシフトした数」ということは、10010の各桁を左に4つ分ずらし、空いた右側の桁に0を入れるので、「10010×10000」の計算

10010×10000 = 100100000

答え: 100100000

問題

「11001を左に7ビットシフトした数」を計算すること

解答

「11001を左に7ビットシフトした数」ということは、11001の各桁を左に7つ分ずらし、空いた右側の桁に0を入れるので、「11001×10000000」の計算

11001×10000000 = 110010000000

答え: 110010000000

問題

「1110101を左に2ビットシフトした数」を計算すること

解答

「1110101を左に2ビットシフトした数」ということは、1110101の各桁を左に2つ分ずらし、空いた右側の桁に0を入れるので、「1110101×100」の計算

1110101×100 = 111010100

答え: 111010100

問題

「10100000を右に3ビットシフトした数」を計算すること

解答

「10100000を右に3ビットシフトした数」ということは、10100000の各桁を右に3つ分ずらして、右の桁を小数点以下の桁にしていくので「10100000÷1000」の計算

10100000÷1000 = 10100.000 = 10100

答え: 10100

問題

「11010100000を右に5ビットシフトした数」を計算すること

解答

「11010100000を右に5ビットシフトした数」ということは、11010100000の各桁を右に3つ分ずらして、右の桁を小数点以下の桁にしていくので「11010100000÷100000」の計算

11010100000÷100000 = 110101.00000 = 110101

答え: 110101

問題

「10101000を右に2ビットシフトした数」を計算すること

解答

「10101000を右に2ビットシフトした数」ということは、10101000の各桁を右に3つ分ずらして、右の桁を小数点以下の桁にしていくので「10101000÷100」の計算

10101000÷100 = 101010.00 = 101010

答え: 101010


Copyright (C) Junko Shirogane, Tokyo Woman's Christian University 2018, All rights reserved.