以下の作業を実施して,ファイル「 report.txt 」(エンコーディングはUTF-8)をUTOLで提出しなさい. なお,2進法についてははいぱーわーくぶっくでも説明されています.
1.クイズ
大きなホテルで,「4」「9」の2つの文字を用いずに部屋番号をつけることにした. 『1号室』から始めて,端から昇順に部屋番号を振っていくものとする. たとえば,4番目の部屋は『5号室』となり,『10号室』は8番目の部屋になる. このとき,以下の問いに答えよ.- 『10000号室』は何番目の部屋になるだろうか? 答え(何番目であるか)と考え方を書きなさい.
- 5000番目の部屋は『何号室』になるだろうか? 答え(『何号室』であるか)と考え方を書きなさい.
- 5xxx番目の部屋は『何号室』になるだろうか? ただし,xxx部分には自分の学生証番号の末尾3桁をあてるものとする. たとえば,学生証番号が「J4170469」であれば,5469番目の部屋を答えることになる. 答え(『何号室』であるか)を書きなさい.
- 『10yyy号室』は何番目の部屋になるだろうか? ただし,yyy部分には自分の学生証番号の末尾3桁をあてるものとするが, 「4」は「8」,「9」は「6」に置き換えることにする. たとえば,学生証番号が「J4170469」であれば,『10866号室』について答えることになる. 答え(何番目であるか)を書きなさい.
2.IPアドレスと計算
手近に得られる数字列として端末のIPアドレスを利用し,16進数や2進数の表記法に慣れる. ターミナルを起動して「hostname」と入力しEnterを押すと,端末名が表示される. さらに得られた端末名を使い「host 端末名」と入力すると, 「端末名 has address 133.11.225.41」のようにIPアドレスが表示される. この例の場合には,「133.11.225.41」が端末のIPアドレスになる. これを『端末IPアドレス』と呼ぶことにする.pc113003m:~ 7329821921$ hostname¶ (端末名の確認) pc113003m.ecc.u-tokyo.ac.jp pc113003m:~ 7329821921$ host pc113003m.ecc.u-tokyo.ac.jp¶ (端末のIPアドレス) pc113003m.ecc.u-tokyo.ac.jp has address 133.11.225.41ここではわかりやすくするために,以降の例示では『端末IPアドレス』を「1.2.10.16」として説明する.
- 『端末IPアドレス』に関する作業
- hostコマンドを利用して,『端末IPアドレス』を調べなさい. 通常のIPアドレスの表記法にしたがって,各数字(10進数)の間にはピリオドを入れるものとする. 以下の例では「1.2.10.16」とする.
- 端末IPアドレス』を16進数で表記しなさい. 『端末IPアドレス』の4つの数字は,それぞれ8ビットを表しているので, 16進数では2桁になるはずである. また,読みやすくするために,各2桁の間には空白を1つずつ入れること. 『端末IPアドレス』が「1.2.10.16」であれば,解答は「01 02 0a 10」となる.
- 『端末IPアドレス』を2進数で表記しなさい. 『端末IPアドレス』の4つの数字は,それぞれ8ビットを表しているので, 2進数では8桁になるはずである. また,読みやすくするために,各8桁の間には空白を1つずつ入れること. 『端末IPアドレス』が「1.2.10.16」であれば, 解答は「00000001 00000010 00001010 00010000」となる.
- 『(1+) IPアドレス』に関する作業
- 『端末IPアドレス』の*最後の数字だけ*に 1 を加えて,『(1+) IPアドレス』を作りなさい. なお表記法は『端末IPアドレス』の場合と同様とする. 『端末IPアドレス』が「1.2.10.16」であれば,『(1+) IPアドレス』は「1.2.10.17」となる.
- 『(1+) IPアドレス』を16進数で表記しなさい. なお表記法は『端末IPアドレス』の場合と同様とする. たとえば,『(1+) IPアドレス』が「1.2.10.17」であれば,解答は「01 02 0a 11」となる.
- 『(1+) IPアドレス』を2進数で表記しなさい. この場合も表記法は『端末IPアドレス』の場合と同様とする. たとえば,『(1+) IPアドレス』が「1.2.10.17」であれば, 解答は「00000001 00000010 00001010 00010001」となる.
- 『(255-)IPアドレス』に関する作業
- 『端末IPアドレス』の*4つの数字*を,それぞれ255から引いて, 『(255-)IPアドレス』を作りなさい. 『端末IPアドレス』が「1.2.10.16」であれば, 『(255-) IPアドレス』は「254.253.245.239」となる.
- 『(255-)IPアドレス』を16進数で表記しなさい. なお表記法は『端末IPアドレス』の場合と同様とする.
- 『(255-)IPアドレス』を2進数で表記しなさい. なお表記法は『端末IPアドレス』の場合と同様とする.
- 2進数の計算
- 『端末IPアドレス』と『(1+) IPアドレス』の2進数表記に対して加算を行いなさい.
たとえば,上記の例では,
『端末IPアドレス』が「00000001 00000010 00001010 00010000」,
『(1+) IPアドレス』が「00000001 00000010 00001010 00010001」なので,
解答は 「00000010 00000100 00010100 00100001」となる.
なお,最上位で桁上がりが起きた場合には,その1桁も加えて書くものとする.たとえば,
『端末IPアドレス』が「10000000 00000000 00000000 00000000」,
『(1+) IPアドレス』が「10000000 00000000 00000000 00000001」であれば,
解答は 「1 00000000 00000000 00000000 00000001」となる. - 『端末IPアドレス』と『(255-)IPアドレス』の2進数表記に対して加算を行いなさい. 最上位で桁上がりが起きた場合には,上と同様に1桁を加えて書くものとする.
- 『(1+) IPアドレス』と『(255-)IPアドレス』の2進数表記に対して加算を行いなさい. 最上位で桁上がりが起きた場合には,上と同様に1桁を加えて書くものとする.
○科類・クラス: 理科1類 03組 ○学生証番号: J4170469 ○氏名: 山口 泰 ○クイズ: 1. 『10000号室』 ????番目の部屋 理由は… 2. 5000番目の部屋 『?????号室』 …というように計算できる 3. 5469番目の部屋 『?????号室』 4. 『10866号室』 ????番目の部屋 ○IPアドレスと計算: 1-1 『端末IPアドレス』 1.2.10.16 1-2 『端末IPアドレス』の16進表記 01 02 0a 10 1-3 『端末IPアドレス』の2進表記 00000001 00000010 00001010 00010000 2-1 『(1+) IPアドレス』 1.2.10.17 2-2 『(1+) IPアドレス』の16進表記 01 02 0a 11 2-3 『(1+) IPアドレス』の2進表記 00000001 00000010 00001010 00010001 3-1 『(255-) IPアドレス』 254.253.245.239 3-2 『(255-) IPアドレス』の16進表記 ?? ?? ?? ?? 3-3 『(255-) IPアドレス』の2進表記 ???????? ???????? ???????? ???????? 4-1 『端末IPアドレス』と『(1+) IPアドレス』の加算 00000010 00000100 00010100 00100001 4-2 『端末IPアドレス』と『(255-) IPアドレス』の加算 ???????? ???????? ???????? ???????? 4-3 『(1+) IPアドレス』と『(255-) IPアドレス』の加算 ???????? ???????? ???????? ????????