...

2.テスト用レジメ 作成例

by user

on
Category: Documents
6

views

Report

Comments

Transcript

2.テスト用レジメ 作成例
◎10 進数→2 進数,8 進数、16 進数
305.59375(10)を基数変換する。
2)305
0.59375
2)152・・・1
×
2
2) 76・・・0
1.18750
2) 38・・・0
×
2
2) 19・・・0
0.3750
2) 9・・・1
×
2
2) 4・・・1
0.750
2) 2・・・0
×
2
2) 1・・・0
1.50
0・・・1
×
305.59375(10)=100110001.10011(2)
100 110 001.100 110(2)=461.46(8)
1 0011 0001.1001 1000(2)=131.98(16)
2
1.0
◎浮動小数点形式
・IEEE
123.5625(10)をIEEE形式にする
(1) 2 進数に直す
123.5625(10)=1111011.1001(2)
(2) 1.###×2#の形にする
1111011.1001(2)=1.1110111001×26
・IBM形式
123.5625(10)をIBM形式にする
(1) 16 進数に直す
-211.65625(10)=1101 0011.1010 1000(2)=D3.A8(16)
(2) 0.###×16#の形にする
D3.A8(16)=0.D3A8×162
小数点の位置が左に 6 個ずれる
(3) 格納
S:正なので 0(負は 1)
e:e-127=6 ∴e=133=10000101(2)
m:11101110010・・・0 小数部のみ取り出す
1
8
23
0
10000101
1110 1110 0100 0000 0000 000
◎補数と減算(2 進数)
・2 の補数・・・ビットを反転して 1 を足す
減算(8 ビット)
2 進数→8 進数は、3 桁ずつに区切る
足りない分は 0 を加える
2 進数→16 進数は、4 桁ずつに区切る
足りない分は 0 を加える
小数点の位置が左に 2 個ずれる
(3) 格納
S: 負なので 1(正は 0)
e:e-64=3 ∴e=67=1000011(2)
m: 11010011101010・・・0 小数部を 2 進数に直す
1
7
24
1
1000011
1101 0011 1010 1000 0000 0000
・1 の補数・・・ビットを反転する
37-15 (2 の補数)
=100101-1111
=100101-001111 (桁を大きい方に揃える)
=100101+110001 (2 の補数)
= 100101
+110001
1010110←最上位の桁上がりは無視
∴答えは 10110(2)=22(10)
37-15 (1 の補数)
=100101-1111
=100101-001111 (桁を大きい方に揃える)
=100101+110000 (1 の補数)
= 100101
+110000
1010101←最上位の桁上がりは無視して 1 を足す
∴答えは 10110(2)=22(10)
12-31 (2 の補数)
=1100-11111
=01100-11111 (桁を大きい方に揃える)
=01100+00001 (2 の補数)
= 01100
+00001
01101←桁上がりがないので負
2 の補数をとる(桁数を変えない)
10010+1=10011(2)=19(10)
マイナスを付けて
-19
12-31 (1 の補数)
=1100-11111
=01100-11111 (桁を大きい方に揃える)
=01100+00000 (1 の補数)
= 01100
+00000
01100←桁上がりがないので負
1 の補数をとる(桁数を変えない)
10011(2)=19(10)
マイナスを付けて
-19
・BCD・・・10 進数の各桁の数字を 4bit の 2 進数で表現 ・3 増し符号・・・BCD に 3 を足したもの。all0 が無い。四捨五入が最上位 bit で判断できる
・アンパック 10 進数・・・1111 BCD 1111 BCD ・・・ BCD 符号 BCD // 158→1111 0001 1111 0101 1100 1000
・パック 10 進数・・・・・・・BCD BCD BCD ・・・ BCD 符号 // -158→0001 0101 1000 1101
符号:正→1100 負→1101 2 進化はいずれも BCD
◎論理回路
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
f
1
0
0
1
1
0
1
1
1
0
1
0
1
0
1
0
̅B
̅ C̅D
̅+A
̅B
̅ CD + A
̅ BC̅D
̅+A
̅ BCD
̅+A
̅ BCD + AB
̅ CD
̅ + AB
̅ CD
̅ + ABC̅D
̅ + ABCD
̅
加法標準形:f = A
カルノー図:
AB:all CD:C(0)D(0)
AB:B(1) CD:D(0)
f
AB:A(1) CD:D(0)
AB:A(0) CD:C(1)D(1)
̅ + BD
̅ + AC̅ + A
̅ CD
簡単化: f = C̅D
00
回路図:
00
1
CD
f
01
11
10
1
1
1
CD
10
AB:all CD:D(0)
1
1
1
1
AB
00
01
11
10
1
1
1
1
11
1
1
10
φ
1
1
1
00
01
11
冗長ビット:大きく囲めるときは、1 として扱っても良い
̅B
̅CD
̅ を冗長ビットとしたときの例が右の表。
A
AB
1
01
̅+A
̅C
AB:A(0) CD:C(1) f = D
◎TCP/IP の 4 階層
TCP/IP 階層
代表的なプロトコル
データ名
アプリケーション層
HTTP,SMTP.POP
メッセージ
トランスポート層
TCP,UDP
セグメント
インターネット層
IP,ARP
パケット
ネットワークインターフェース層
イーサネット,PPP
フレーム
◎IP アドレスの割り振り
クラス A:先頭ビットが「0」から始まるアドレスグループ。ネットワーク部は先頭の 8 ビット
クラス B:先頭ビットが「10」から始まるアドレスグループ。ネットワーク部は先頭の 16 ビット
クラス C:先頭ビットが「110」から始まるアドレスグループ。ネットワーク部は先頭の 24 ビット
<例題>
クラス B ネットワーク 172.31.0.0 をサブネット化し、各サブネットにそれぞれ 600 台のホストを収容できるようにする。ただしサブネットの数を
なるべく多くするものとする。
・作成できるサブネットの数は?
29=512,210=1024 なので、ホスト用に必要なのは 10 ビット。よってサブネット用に使えるのは 16-10=6 ビット。したがって、作成できるサブネ
ットの数は、26-2=64-2=62。
・プリフィクス長は?
16+6=22
・サブネットマスクは?
11111111.11111111.11111100.00000000(2)=255.255.252.0
サブネット
ネットワークアドレス
ブロードキャストアドレス
利用可能アドレス
0
172.31.0.0
172.31.00000011.11111111
サブネット ホスト
172.31.3.255
172.31.0.1~173.31.3.254
1
172.31.00000100.00000000
サブネット ホスト
172.31.4.0
172.31.00000111.11111111
サブネット ホスト
172.31.7.255
172.31.4.1~173.31.7.254
2
172.31.8.0
172.31.11.255
172.31.8.1~173.31.11.254
・・・・・・
・・・・・・
・・・・・・
・・・・・・
61
172.31.244.0
172.31.247.255
172.31.244.1~173.31.247.254
62
172.31.248.0
172.31.251.255
172.31.248.1~173.31.251.254
63
172.31.252.0
172.31.255.255
172.31.252.1~173.31.255.254
計算機における誤差
・丸め誤差…数値をある桁で四捨五入、切り上げ、切り捨てした際に生じる誤差
・オーバー(アンダー)フロー…計算結果が計算機の扱える最大(最小)値を超えた時に生じる誤差
→オーバーフローが起きる可能性がある場合、十分小さい数で計算できるよう式変形する
・桁落ち…絶対値のほぼ等しい二数の差を求めた際に、有効桁が減るために発生する誤差
→絶対値のほぼ等しい数同士の計算を、極力避ける
・情報落ち…絶対値の大きい数と小さい数を加減算した時に、絶対値の小さい数が無視される
→絶対値の近い順に計算する
・打ち切り誤差…途中で計算を打ち切ることによって生じる誤差
サブネットのうち ALL0 と ALL1 を
除いた場合
Fly UP