TUGAS
07
SISTEM
BERKAS
ORGANISASI BERKAS
HASHING
Disusun
oleh:
Nama
: Hari Rachmadi
NIM
: 121051030
JURUSAN
TEKNIK INFORMATIKA
FAKULTAS
TEKNOLOGI INDUSTRI
INSTITUT
SAINS & TEKNOLOGI AKPRIND
YOGYAKARTA
2015
Soal
Gunakanlah asumsi-asumsi yang tepat untuk menjawab
pertanyaan-pertanyaan berikut :
#
|
Kode
|
Nama
|
Status
|
Sks
|
Smt
|
1
|
IPBU 11101
|
Pancasila
|
W
|
2
|
1
|
2
|
IPBU 11102
|
Agama
|
W
|
2
|
1
|
3
|
TIFS 11103
|
Database
|
W
|
2
|
1
|
4
|
TIFS 21202
|
Delphi
|
W
|
2
|
2
|
5
|
TIFS 21201
|
Foxpro
|
W
|
2
|
2
|
6
|
TIFS 22105
|
Pascal
|
w
|
2
|
2
|
Disimpan dengan metode
1.
K MOD N
2.
K MOD P
3.
Midsquaring
4.
Penjumlahan Digit
5.
Multiplication
6.
Trunction
7.
Folding
8.
Konversi Radix
Ditanyakan :
a.
Penempatan nilai-nilai
kunci
b.
Rata-rata akses
Penyelesaian
Asumsi yang digunakan pada kasus kode
mata kuliah yang dijadikan kunci untuk penempatan penyimpanan di dalam memori yaitu :
1.
Kode mata kuliah berjumlah
9 buah dengan 4 buah berbentuk huruf dan 5 buah berbentuk angka
2.
4 buah yang berbentuk huruf
menandakan jenis mata kuliah yang dikategorikan kedalam kategori tertentu
3.
Maka dari itu diasumsikan bahwa 4 buah
huruf tersebut dikonversikan kedalam suatu angka tertentu dimana itu sebagai
patokan dalam penghitungan untuk penempatan penyimpanan didalam memori
4.
Yaitu “IPBU”, diganti
dengan angka “1” dan “TIFS” diganti dengan angka “2” dan jika ada kode lain
maka menyesuaikan urutannya
5.
Sehingga dalam perhitungan
nanti menjadi 6 digit dengan asumsi digit pertama yang paling kiri adalah
pengganti kode mata kuliah yang berbentuk huruf, yang digunakan untuk
memudahkan dalam proses penghitungan.
6.
Sehingga kuncinya menjadi :
#
|
Kode
|
Nama
|
Status
|
Sks
|
Smt
|
1
|
1
11101
|
Pancasila
|
W
|
2
|
1
|
2
|
1
11102
|
Agama
|
W
|
2
|
1
|
3
|
2 11103
|
Database
|
W
|
2
|
1
|
4
|
2
21202
|
Delphi
|
W
|
2
|
2
|
5
|
2
21201
|
Foxpro
|
W
|
2
|
2
|
6
|
2
22105
|
Pascal
|
W
|
2
|
2
|
a. K MOD N
Kunci
: 111101, 111102, 211103, 221202, 221201, 222105
N : 6
P : 7
Alamat
indeks : 0-6
H(111101) è 111101 MOD 6 = 5
H(111102) è 111102 MOD 6 = 0
H(211103) è 211103 MOD 6 = 5
Collision,
ditempatkan pada indeks terbesar yang masih kosong
6
masih kosong, sehingga H(211103) è 6
Home
addres 5 diberi link ke 6
H(221202) è 221202 MOD 6 = 0
Collision,
ditempatkan pada indeks terbesar yang masih kosong
4
masih kosong, sehingga H(221202) è 4
Home
address 0 diberi link ke 4
H(221201) è 221201 MOD 6 = 5
Collision,
ditempatkan pada indeks terbesar yang masih kosong
3
masih kosong, sehingga H(221201) è 3
Home
address terahir 6 diberi link ke 3
H(222105) è 222105 MOD 6 = 3
Coliision,
ditempatkan pada indeks terbesar yang masih kosong
2
masih kosong, sehingga H(222105) è 2
Home
address 3 diberi link ke 2
Pada K MOD N terdapat
alamat kunci yang sama, sehingga diselesaikan dengan Collision agar tidak
terjadi alamat kunci indeks yang sama, sehingga :
Record
|
Kunci
|
Link
|
0
|
111102
|
4
|
1
|
||
2
|
222105
|
|
3
|
221201
|
2
|
4
|
221202
|
|
5
|
111101
|
6
|
6
|
211103
|
3
|
Rata-rata akses =
(6+2+3+4)/6 = 2.5
Ket :
6
langkah penempatan kunci pada home address
2
langkah penempatan kunci 211103, 221202 (collision)
3
langkah penempatan kunci 221201 (collision)
4
langkah penempatan kunci 222105 (collision)
b.
K MOD P
H(K)
= K MOD M
Alamat
indeks = 0 s/d M-1
Jawab :
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit, sehingga M=97
Alamat indeks= 0 – 96
H(111101) è 111101 MOD 97 = 36
H(111102) è 111102 MOD 97 = 37
H(211103) è 211103 MOD 97 = 31
H(221202) è 221202 MOD 97 = 42
H(221201) è 221201 MOD 97 = 41
H(222105) è 222105 MOD 97 = 72
Penempatan nilai-nilai
kunci :
Record
|
Kunci
|
0
|
…
|
…
|
…
|
31
|
211103
|
…
|
…
|
36
|
111101
|
37
|
111102
|
…
|
…
|
41
|
221201
|
42
|
221202
|
…
|
…
|
72
|
222105
|
…
|
…
|
…
|
…
|
96
|
Rata
–rata akses = 6/97 = 0.61
H(K) = K MOD M+1
M=97
Alamat
indeks = 1 – 97
H(111101) è 111101 MOD 97 + 1 = 37
H(111102) è 111102 MOD 97 + 1 = 38
H(211103) è 211103 MOD 97 + 1 = 32
H(221202) è 221202 MOD 97 + 1 = 43
H(221201) è 221201 MOD 97 + 1 = 42
H(222105) è 222105 MOD 97 + 1 = 73
Penempatan nilai-nilai
kunci :
Record
|
Kunci
|
1
|
…
|
…
|
…
|
32
|
211103
|
…
|
…
|
37
|
111101
|
38
|
111102
|
…
|
…
|
42
|
221201
|
43
|
221202
|
…
|
…
|
73
|
222105
|
…
|
…
|
…
|
…
|
97
|
Rata
–rata akses = 6/97 = 0.61
c. Midsquaring
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit
K
|
K^2
|
H(K)
|
111101
|
12343432201
|
34
|
111102
|
12343654404
|
36
|
211103
|
44564476609
|
44
|
221202
|
48930324804
|
03
|
221201
|
48929882401
|
98
|
222105
|
49330631025
|
06
|
Penempatan kunci
Record
|
Kunci
|
0
|
…
|
…
|
…
|
03
|
221202
|
…
|
…
|
06
|
222105
|
…
|
…
|
34
|
111101
|
…
|
|
36
|
111102
|
…
|
…
|
44
|
211103
|
…
|
…
|
98
|
221201
|
99
|
…
|
Rata rata akses = 6/100 =
0.06
d.
Penjumlahan Digit
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101) è 11 + 11 + 01 = 23
H(111102) è 11 + 11 + 02 = 24
H(211103) è 21 + 11 + 03 = 35
H(221202) è 22 + 12 + 02 = 36
H(221201) è 22 + 12 + 01 = 35
Collision,
ditempatkan pada indeks terbesar yang masih kosong
99
masih kosong, sehingga H(221201) è 99
Home
address 35 diberi link ke 99
H(222105) è 22 + 21 + 05 = 48
Record
|
Kunci
|
Link
|
0
|
…
|
|
…
|
…
|
|
23
|
111101
|
|
24
|
111102
|
|
…
|
…
|
|
35
|
211103
|
99
|
36
|
221202
|
|
…
|
…
|
|
…
|
…
|
|
48
|
222105
|
|
…
|
…
|
|
…
|
…
|
|
…
|
…
|
|
99
|
221201
|
Rata-rata akses =
(6+1)/100=0.07
Ket=
6 è langkah penempatan setiap
kunci pada home address
1 è langkah penempatan kunci
221201 (collision)
e.
Multiplication
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101)
è11 | 11 | 01
è 11 * 01
è 11
H(111102)
è 11 | 11 | 02
è 11 * 02
è 22
H(211103)
è 21 | 11 | 03
è 21 * 03
è 63
H(221202)
è 22 | 12 | 02
è 22 * 02
è 44
H(221201)
è 22 | 12 | 01
è 22 * 01
è 22
Collision,
ditempatkan pada indeks terbesar yang masih kosong
99
masih kosong, sehingga H(221201) è 99
Home
address 22 diberi link ke 99
H(222105)
è 22 | 21 | 05
è 22 * 05
è 110
è 11
Collision,
ditempatkan pada indeks terbesar yang masih kosong
99
masih kosong, sehingga H(222105) è 98
Home
address 11 diberi link ke 98
Record
|
Kunci
|
Link
|
0
|
…
|
|
…
|
…
|
|
11
|
111101
|
98
|
…
|
…
|
|
22
|
111102
|
99
|
…
|
…
|
|
…
|
…
|
|
44
|
221202
|
|
…
|
…
|
|
…
|
…
|
|
63
|
211103
|
|
…
|
…
|
|
98
|
222105
|
|
99
|
221201
|
Rata-rata akses =
(6+2)/100=0.08
Ket=
6 è langkah penempatan setiap
kunci pada home address
2è langkah penempatan kunci
221201,222105 (collision)
f.
Trunction
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 3 digit sehingga alamat indeks dari 0-999
Pemotongan pada 3 digit
terahir
K
|
Pemotongan
|
H(K)
|
111101
|
111101
|
101
|
111102
|
111102
|
102
|
211103
|
211103
|
103
|
221202
|
221202
|
202
|
221201
|
221201
|
201
|
222105
|
222105
|
105
|
Record
|
Kunci
|
0
|
…
|
…
|
…
|
101
|
111101
|
102
|
111102
|
103
|
211103
|
…
|
…
|
105
|
222105
|
…
|
…
|
201
|
221201
|
202
|
221202
|
…
|
…
|
…
|
…
|
…
|
…
|
999
|
…
|
Rata-rata akses =
6/1000=0.006
g.
Folding
Folding
by boundary (non carry)
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101) è 11 | 11 | 01
è 11 + 11 +10
è32
H(111102) è 11 | 11 | 02
è 11 + 11 +20
è 42
H(211103) è 21 | 11 | 03
è 12 + 11 + 30
è 53
H(221202)
è 22 | 12 | 02
è 22 + 12 + 20
è 54
H(221201) è 22 | 12 | 01
è 22 + 12+ 10
è 44
H(222105)
è 22 | 21 | 05
è 22 + 21 + 50
è 93
Record
|
Kunci
|
0
|
…
|
…
|
…
|
32
|
111101
|
…
|
…
|
42
|
111102
|
…
|
…
|
44
|
221201
|
…
|
…
|
53
|
211103
|
54
|
221202
|
…
|
…
|
93
|
222105
|
…
|
…
|
99
|
…
|
Rata-rata akses =
6/100=0.06
Folding
by boundary (carry)
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101) è 11 | 11 | 01
è 11 + 11 + 10
è 32
H(111102) è 11 | 11 | 02
è 11 + 11 + 20
è 42
H(211103) è 21 | 11 | 03
è 12 + 11 + 30
è 53
H(221202)
è 22 | 12 | 02
è 22 + 12 + 20
è 54
H(221201) è 22 | 12 | 01
è 22 + 12 + 10
è 44
H(222105)
è 22 | 21 | 05
è 22 + 21 + 50
è 93
Record
|
Kunci
|
0
|
…
|
…
|
…
|
32
|
111101
|
…
|
…
|
42
|
111102
|
…
|
…
|
44
|
221201
|
…
|
…
|
53
|
211103
|
54
|
221202
|
…
|
…
|
93
|
222105
|
…
|
…
|
99
|
…
|
Rata-rata akses =
6/100=0.06
Folding
by shifting (non-carry)
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101) è 11 | 11 | 01
è 11 + 11 + 01
è23
H(111102) è 11 | 11 | 02
è 11 + 11 + 02
è 24
H(211103) è 21 | 11 | 03
è 21 + 11 + 03
è 35
H(221202)
è 22 | 12 | 02
è 22 + 12 + 02
è 36
H(221201) è 22 | 12 | 01
è 22 + 12 + 01
è 35
Collision,
ditempatkan pada indeks terbesar yang masih kosong
99
masih kosong, sehingga H(221201) è 99
Home
address 35 diberi link ke 99
H(222105)
è 22 | 21 | 05
è 22 + 21 + 05
è 48
Record
|
Kunci
|
Link
|
0
|
…
|
|
…
|
…
|
|
23
|
111101
|
|
24
|
111102
|
|
…
|
…
|
|
…
|
…
|
|
35
|
211103
|
99
|
36
|
221202
|
|
…
|
…
|
|
48
|
222105
|
|
…
|
…
|
|
…
|
…
|
|
…
|
…
|
|
99
|
221201
|
Rata-rata akses =
(6+1)/100=0.07
Ket=
6 è langkah penempatan setiap
kunci pada home address
1 è langkah penempatan kunci
221201 (collision)
Folding
by shifting (carry)
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 2 digit sehingga alamat indeks dari 0-99
H(111101) è 11 | 11 | 01
è 11 + 11 + 01
è 23
H(111102) è 11 | 11 | 02
è 11 + 11 + 02
è 24
H(211103) è 21 | 11 | 03
è 21 + 11 + 03
è 35
H(221202)
è 22 | 12 | 02
è 22 + 12 + 02
è 36
H(221201) è 22 | 12 | 01
è 22 + 12 + 01
è 35
Collision,
ditempatkan pada indeks terbesar yang masih kosong
99
masih kosong, sehingga H(221201) è 99
Home
address 35 diberi link ke 99
H(222105)
è 22 | 21 | 05
è 22 + 21 + 05
è 48
Record
|
Kunci
|
Link
|
0
|
…
|
|
…
|
…
|
|
23
|
111101
|
|
24
|
111102
|
|
…
|
…
|
|
…
|
…
|
|
35
|
211103
|
99
|
36
|
221202
|
|
…
|
…
|
|
48
|
222105
|
|
…
|
…
|
|
…
|
…
|
|
…
|
…
|
|
99
|
221201
|
Rata-rata akses =
(6+1)/100=0.07
Ket=
6 è langkah penempatan setiap
kunci pada home address
1 è langkah penempatan kunci
221201 (collision)
Kunci = 111101, 111102,
211103, 221202, 221201, 222105
Pada kasus ini, saya hanya
menyediakan lebar alamat indeksnya 7 digit sehingga alamat indeks dari
0-9999999
H(111101) è1 * 155 + 1 * 154
+ 1 * 153 + 1 * 152 + 0* 151 + 1* 150
è813601
H(111102) è 1 * 155 + 1 *
154 + 1 * 153 + 1 * 152 + 0* 151 +
2* 150
è813602
H(211103) è2 * 155 + 1 * 154
+ 1 * 153 + 1 * 152 + 0* 151 + 3* 150
è1572978
H(221202)
è2 * 155 + 2 * 154
+ 1 * 153 + 2 * 152 + 0* 151 + 2* 150
è1623827
H(221201) è2 * 155 + 2 * 154
+ 1 * 153 + 2 * 152 + 0* 151 + 1* 150
è1623826
H(222105)
è2 * 155 + 2 * 154
+ 2 * 153 + 1 * 152 + 0* 151 + 5* 150
è1626980
Record
|
Kunci
|
0
|
…
|
…
|
…
|
813601
|
111101
|
813602
|
111102
|
…
|
…
|
1572978
|
211103
|
…
|
…
|
1623826
|
221201
|
1623827
|
221202
|
…
|
…
|
1626980
|
222105
|
…
|
…
|
…
|
…
|
9999999
|
Rata
–rata akses = 6/10000000=0.0000006
Tidak ada komentar:
Posting Komentar