11月9日(火)4コマ目
今日、やったこと
関数
今日のホワイトボード
関数の構文を説明しただけで、あとは課題をやってもらいました。
課題1-4
ヒント
0以上255以下の10進数を2進数に変換する課題。
最大でも8ビットなので、要素数8のリストを用意し、各ビットの値を代入すればOK。
各ビットに代入する値は
[1回目]変換対象の10進数を2で割った余り、答えは次に2で割られる数
[2回目以降] 前回の2で割った答えを2で割った余り
です。
|
|
| 図 課題1-4 ヒント |
解答例
課題1-5
ヒント
負数も加わりましたが、2進数に変換しても最大8ビット。
負数の時は以下の処理で2の補数表現をします。
①もし、負数なら絶対値へ
②絶対値を2進数へ変換
③②の2進数を1の補数へ
1の補数は各ビットを反転(0->1、1->0)
④③の1の補数を2の補数へ
2の補数にするには+1
桁上がりに注意!!
0+0 = 0(桁上がりなし)
1+0 = 1(桁上がりなし)
0+1 = 1(桁上がりなし)
1+1 = 10 (1が桁上がり)