ソフトウェア基礎技術研修 - System LSI Lab.

整数の表現
小テスト問題
小テスト問題:整数の表現
①
10進数78(10)を 1) 符号なし整数、2)2の補数、で表現された
16ビット幅の2進数に変換せよ
②
10進数53(10)を 1) 符号つき絶対値、2)2の補数、で表現され
た16ビット幅の2進数に変換せよ
③
10進数-53(10)を 1) 符号つき絶対値、2)2の補数、で表現さ
れた16ビット幅の2進数に変換せよ
④ 78(10) と 53(10)を16ビット幅の2の補数表現に変換し、それらの
加算を行え(筆算)
⑤
78(10) と 53(10)を16ビット幅の2の補数表現に変換し、
減算「78(10) ー 53(10)」を行え
ヒント: 78-53=78+(-53)
九州大学工学部電気情報工学科
問題1:符号なし整数、2の補数への変換
10進数78(10)を 1) 符号なし整数、2)2の補数、で表現された
16ビット幅の2進数に変換せよ
Step1:2進数へ変換
基数
余り
0
2 78 ・・・
商
2 39 ・・・ 1
2 19 ・・・ 1
2 9 ・・・ 1
2 4 ・・・ 0
2 2 ・・・ 0
2 1 ・・・ 1
0
78 (10) = 1001110 (2)
Step2:各表現へ変換
1)符号なし整数
0000000001001110
2)2の補数
0000000001001110
九州大学工学部電気情報工学科
問題2:符号なし整数、2の補数への変換
10進数53(10)を 1) 符号つき絶対値、2)2の補数、で表現され
た16ビット幅の2進数に変換せよ
Step1:2進数へ変換
基数
余り
1
2 53 ・・・
商
2 26 ・・・ 0
2 13 ・・・ 1
2 6 ・・・ 0
2 3 ・・・ 1
2 1 ・・・ 1
0
53 (10) = 110101 (2)
Step2:各表現へ変換
1)符号つき絶対値
0000000000110101
2)2の補数
0000000000110101
九州大学工学部電気情報工学科
問題3:符号なし整数、2の補数への変換
10進数-53(10)を 1) 符号つき絶対値、2)2の補数、で表現さ
れた16ビット幅の2進数に変換せよ
Step1:2進数へ変換
基数
余り
1
2 53 ・・・
商
2 26 ・・・ 0
2 13 ・・・ 1
2 6 ・・・ 0
2 3 ・・・ 1
2 1 ・・・ 1
0
53 (10) = 110101 (2)
Step2:各表現へ変換
1)符号つき絶対値
0000000000110101
符号
設定
1000000000110101
2)2の補数
反転
0000000000110101
1 1 1 1 1 1 1 1 1 1 0 0 1 0 1 0 +1
1111111111001011
九州大学工学部電気情報工学科
問題4:2の補数表現の加算
78(10) と 53(10)を16ビット幅の2の補数表現に変換し、それらの
加算を行え(筆算)
+
0000000001001110
78(10)
0000000000110101
53(10)
1 1 1 1 1
0000000010000011
131(10)
27×1 + 21×1 + 20×1
九州大学工学部電気情報工学科
問題5:2の補数表現の減算
78(10) と 53(10)を16ビット幅の2の補数表現に変換し、
減算「78(10) ー 53(10)」を行え
ヒント: 78-53=78+(-53)
0000000001001110
+
78(10)
1 1 1 1 1 1 1 1 1 1 0 0 1 0 1 1 -53(10)
1 1 1 1 1 1 1 1 1 1
1 1 1
0000000000011001
25(10)
24×1 + 23×1 + 20×1
九州大学工学部電気情報工学科
 Created by Koji Inoue, 2005 (R1.00)
九州大学工学部電気情報工学科