TEKHNIK kalkulasi pada alamat
Teknik – teknik yang terdapat pada Kalkulasi Alamat
o Scatter Storage Techniques
Adalah Sebuah
metode dan aparatus untuk melakukan penyimpanan dan pengambilan dalam suatu
sistem penyimpanan informasi yang diungkapkan menggunakan teknik hashing. Untuk
mencegah kontaminasi dari media penyimpanan dengan secara otomatis berakhir
catatan, teknik pengumpulan sampah digunakan yang menghapus semua berakhir
catatan di lingkungan dari penyelidikan ke dalam sistem storge data. Lebih
khususnya, masing-masing probe untuk penyisipan, pengambilan atau penghapusan
merekam adalah kesempatan untuk mencari seluruh rangkaian catatan ditemukan
untuk catatan berakhir dan kemudian menghapusnya dan menutup rantai.Koleksi ini
sampah secara otomatis menghapus catatan kontaminasi berakhir di sekitar probe,
sehingga secara otomatis decontaminating ruang penyimpanan.. Karena tidak ada
kontaminasi jangka panjang dapat membangun dalam sistem ini, akan sangat berguna
untuk basis data yang besar yang banyak digunakan dan yang memerlukan akses
cepat disediakan oleh hashing.
o Randomizing Techniques
Adalah Meskipun secara historis “teknik pengacakan”
manual (seperti menyeret kartu, gambar potongan kertas dari tas, memintal roulette
wheel) yang umum, saat ini teknik otomatis sebagian besar digunakan.Seperti
kedua memilih sampel acak dan permutasi acak dapat dikurangi menjadi hanya
memilih nomor acak, nomor acak generasi sekarang metode yang paling umum
digunakan, baik hardware nomor acak generator dan nomor acak generator-pseudo.
metode pengacakan Non-algoritmik meliputi:
metode pengacakan Non-algoritmik meliputi:
1.
Casting Yarrow
batang (untuk I Ching )
2.
Lempar dadu
3.
Menggambar
sedotan
4.
Shuffling cards
Mengocok kartu
5.
Roulette wheels
Roulette roda
6.
Menggambar potongan
kertas atau bola dari kantong
7.
”Lottery mesin“
o Key-To-Address Transformation Methods
Adalah Teknik yang digunakan dalam teori mengoreksi
kesalahan-kode ini diterapkan untuk menyelesaikan masalah menangani file besar.
dalam Pendekatan baru ini ke file menangani masalah digambarkan dengan desain
khusus untuk menampilkan kelayakan. dari Efektivitas merupakan lebih lanjut diilustrasikan
dengan membandingkan hasil uji yang diperoleh dari simulasi perhitungan, yang
menggunakan data khas, terhadap nilai-nilai dihitung dari model yang ideal.
o Direct Addressing Techniques
Adalah Semua
instruksi lain yang diperlihatkan menggunakan pengalamatan langsung, yang
berarti bahwa data yang direferensikan sebenarnya disimpan dalam struktur lain
- baik sebuah register atau lokasi memori.
o Hash Table Methods
Adalah struktur
data yang menggunakan fungsi hash untuk efisien peta pengidentifikasi tertentu
atau kunci (misalnya, nama-nama orang) untuk dihubungkan nilai (misalnya, nomor
telepon mereka). Fungsi dari hash digunakan untuk mengubah kunci ke indeks
(hash) dari array elemen (dalam slot atau ember) dimana nilai yang sesuai yang
akan dicari.Dalam banyak situasi, tabel hash ternyata lebih efisien daripada
pohon pencarian atau lainnya tabel struktur lookup. Untuk alasan ini,mereka
banyak digunakan di berbagai jenis komputer perangkat lunak, terutama untuk
array asosiatif, pengindeksan database,cache, dan set.
Keuntungannya :
a)
Keuntungan utama dari tabel hash atas struktur tabel
data lainnya adalah kecepatan. Keuntungan ini lebih jelas ketika jumlah entri
yang besar (ribuan atau lebih). tabel Hash dapat sangat efisien ketika jumlah
maksimum entri dapat diprediksi dari sebelumnya, sehingga ember array dapat
dialokasikan sekali dengan ukuran optimal dan tidak pernah diubahukurannya.
b)
Jika himpunan pasangan kunci-nilai adalah tetap dan
dikenal lebih dulu sehingga insersi dan penghapusan tidak diijinkan, yang dapat
mengurangi biaya rata-rata lookup pilihan hati-hati dari fungsi hash, ember
ukuran meja, dan struktur data internal. Secara khusus, satu mungkin dapat
menyusun fungsi hash yang tabrakan-bebas, atau bahkan sempurna.
Kerugiannya :
a) Untuk
aplikasi pengolahan string tertentu, seperti spell-checking , tabel hash
mungkin kurang efisien daripada mencoba , automata terbatas , atau array Judy .
Juga, jika setiap tombol diwakili oleh sejumlah kecil bit yang cukup, maka,
bukan sebuah tabel hash, yang dapat menggunakan tombol langsung sebagai indeks
ke array nilai.
b) Meskipun rata-rata biaya per operasi adalah
konstan dan cukup kecil, dengan biaya operasi tunggal dapat cukup tinggi.
Secara khusus, jika tabel hash menggunakan ukuran dinamis , penyisipan atau
penghapusan operasi yang memerlukan waktu sebanding dengan jumlah entri.Hal ini
dapat di katakan kelemahan yang serius secara real-time atau aplikasi
interaktif.
c) Hash tabel dalam pameran umumnya miskin
pemukiman referensi -yaitu, data yang akan diakses didistribusikan tampaknya
secara acak di memori. Hal ini Karena tabel hash menyebabkan pola akses berupa
melompat-lompat, ini dapat memicu cache mikroprosesor yang menyebabkan
penundaan yang lama. struktur data seperti array, mencari dengan pencarian
linear , akan lebih cepat jika meja relatif kecil dan tombol yang integer atau
string singkat lainnya.Tabel Hash menjadi sangat tidak efisien bila ada banyak tabrakan. Sementara
itu hash distribusi yang tidak merata sangat tidak mungkin muncul secara
kebetulan, seorang dengan pengetahuan dari fungsi hash mungkin dapat memberikan
informasi untuk hash yang menciptakan perilaku-kasus terburuk dengan
menyebabkan tabrakan yang berlebihan, yang mengakibatkan kinerja yang sangat
buruk yaitu, sebuah serangan penolakan layanan . Dalam aplikasi kritis, baik
universal hashing dapat digunakan atau struktur data dengan jaminan terburuk
lebih baik mungkin lebih disukai.
o Hashing
Adalah
Teknik yang sering digunakan dalam pemograman pada umumnya untuk pemograman
kompetitif, hasing dapat membantu menyelesaikan persoalan secara tidak terduga.
Keuntungan pemakaian Hashing a) Nilai Key yang sebenarnya dapat dipakai karena diterjemahkan kedalam sebuah alamat. b) Nilai Key adalah address space independentbila berkas direorganisasi, fungsi hash berubah tepai nilai Key tetap Kerugian pemakaian Hashing : a) Membutuhkan waktu proses dalam mengimplementasikan fungsi hash. b) Membutuhkan waktu proses dan akses I/O dalam mengatasi benturan.
Keuntungan pemakaian Hashing a) Nilai Key yang sebenarnya dapat dipakai karena diterjemahkan kedalam sebuah alamat. b) Nilai Key adalah address space independentbila berkas direorganisasi, fungsi hash berubah tepai nilai Key tetap Kerugian pemakaian Hashing : a) Membutuhkan waktu proses dalam mengimplementasikan fungsi hash. b) Membutuhkan waktu proses dan akses I/O dalam mengatasi benturan.
Fungsi
Hash yang umum Di gunakan :
o Division
Remainder
Pada divison
remainder, alamat relatif dari suatu nilai Key merupakan sisa dari hasil
pembagian nilai key tersebut dengan suatu bilangan yang disebut sebagai
bilangan pembagi.
Banyak
faktor yang harus dipertimbangkan dalam pemilihan pembagi
a)
Jangkauan dari nilai Key yang dihasilkan dari
operasi KEY MOD DIV adalah 0 Sampai Div -1.
b)
Pembagi harus diseleksi untuk mengurangi
benturan.
c)
Menurut riset dari W.Buchholz, sebaiknya
pembagi itu merupakan bilangan prima.
d)
Bukan bilangan prima yang mempunyai faktor
prima kurang dari 20 akan dapat memberikan jaminan penampilan yang lebih
menarik.
e)
Walaupun telah ditentukan pembagi dengan baik
untuk mengatasi benturan, bila ruang alamat dari berkas relatif mendekati
penuh, maka peluang terjadinya benturan akan meningkat.
Untuk mengukur kepenuhan berkas relatif digunakan Load
Factor(Faktor Muat).
Load Faktor = Banyak Record Dalam Berkas
-----------------------------------------------
Max.Banyak Record Dalam Berkas
Contoh Soal :
Kita ingin menyimpan sebanyak n record pada suatu berkas dan load
factor adalah 0.8 maka max banyak record pada berkas adalah 1.35 n.
0.8 = Max n
-------
Max = 1.25 n
Kita ingin membuat berkas yang terdiri dari 4000 record
Load Factor = 0.8
Maka max banyak record pada berkas :
(1.25)n = (1.25) . 4000
= 5000
Bilangan Pembagi : 5003
123456789
---------------- = 24676 sisa 2761+1
5003
Jadi, alamat relatif di
dapat dari sisa pembagi +1
o Mid Square Hashing
Adalah untuk
mendapatkan alamat relatif, nilai Key dikuadratkan, kemudian beberapa digit
diambil dari tengah.
Contoh soal
:
Jumlah nilai
Key yang di kuadratkan, dari nilai Key 123456789 = 18 Digit
Untuk alamat
relatif = 18
-----
2
= 9
Jadi mulai
dari digit ke 9 dihitung dari kiri, maka alamat alternatif = 9850 ( Karena
Ditentukan 4 digit sebagai alternatif
o Hashing By Folding
Adalah untuk
mendapatkan alamat alternatif, nilai key dibagi menjadi beberapa bagia, setiap
bagian (kecuali bagian terakhir)mempunyai jumlah digit yang sama dengan alamat
alternatif.
Bagian –
bagian ini kemudian di lipat seperti kertas dan di jumlah.
Hasilnya,digit
yang tertinggi dibuang bila di perlukan.
Contoh
Soal :
Nilai Key
987651221 dan alamat alternatif sebanyak 4 digit.
9 | 8 7 6
5 | 1 2 2 1
Menghasilkan
:
9
8 7 6 5
1 2 2 1
------------
+
9|9 9 8 6
Komentar
Posting Komentar