Kamis, 02 April 2020

Sistem Memory Komputer

I. PENGERTIAN
            Memori merupakan bagian dari komputer yang berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori biasanya disebut juga dengan istilah : computer storage, computer memory atau memory, merupakan piranti komputer yang digunakan sebagai media penyimpan data dan informasi saat menggunakan komputer. Memory merupakan bagian yang penting dalam komputer modern dan letaknya di dalam CPU (Central Processing Unit).
Sebagian besar komputer memiliki hirarki memori yang terdiri atas tiga level, yaitu:
·       Physical Register di CPU, berada di level teratas. Informasi yang berada di register dapat diakses dalam satu clock cycle CPU.
·       Primary Memory (executable memory), berada di level tengah. Contohnya, RAM. Primary Memory diukur dengan satu byte dalam satu waktu, secara relatif dapat diakses dengan cepat, dan bersifat volatile (informasi bisa hilang ketika komputer dimatikan). CPU mengakses memori ini dengan instruksi single load dan store dalam beberapa clock cycle.
·       Secondary Memory, berada di level bawah. Contohnya, disk atau tape. Secondary Memory diukur sebagai kumpulan dari bytes (block of bytes), waktu aksesnya lambat, dan bersifat non-volatile (informasi tetap tersimpan ketika komputer dimatikan). Memori ini diterapkan di storage device, jadi akses meliputi aksi oleh driver dan device.

II. Penggunaan Memory
            Komponen utama dalam sistem komputer adalah Arithmetic Logic Unit (ALU), Control Circuitry, Storage Space dan piranti Input/Output. Jika tanpa memory, maka komputer hanya berfungsi sebagai digital signal processing devices, contohnya kalkulator atau media player. Kemampuan memory untuk menyimpan data, instruksi dan informasi-lah yang membuat komputer dapat disebut sebagai general-purpose komputer.Komputer merupakan piranti digital, maka informasi disajikan dengan sistem bilangan binary. Teks, angka, gambar, sudio dan video dikonversikan menjadi sekumpulan bilangan binary (binary digit atau disingkat bit). Sekumpulan bilangan binary dikenal dengan istilah BYTE, dimana 1 byte = 8 bits. Semakin besar ukuran memory-nya maka semakin banyak pula informasi yang dapat disimpan di dalam komputer (storage devices).Berikut ini beberapa gambar yang bisa mewakili bagaimana cara informasi disimpan dalam memory dan bagaimana data ditransfer dari satu bagian ke bagian lainnya.
  

Memori (atau lebih tepat disebut memori fisik pada komputer)merupakan istilah generik yang merujuk pada media penyimpanan data sementara pada komputer. Setiap program dan data yang sedang diproses oleh prosesor akan disimpan di dalam memori fisik.
Data yang disimpan dalam memori fisik bersifat sementara, karena data yang disimpan di dalamnya akan tersimpan selama komputer tersebut masih dialiri daya (dengan kata lain, komputer itu masih hidup). Ketika komputer itu direset atau dimatikan, data yang disimpan dalam memori fisik akan hilang. Oleh karena itulah, sebelum mematikan komputer, semua data yang belum disimpan ke dalam media penyimpanan permanen (umumnya berbasis disk, semacamhard disk atau floppy disk), sehingga data tersebut dapat dibuka kembali di lain kesempatan. Memori fisik umumnya diimplementasikan dalam bentuk Random Access Memory (RAM), yang bersifat dinamis (DRAM).


III. JENIS MEMORI (MEDIA PENYIMPANAN)

A.   MEMORI INTERNAL

Memori jenis ini dapat diakses secara langsung oleh prosesor. Memori internal memiliki fungsi sebagai pengingat. Dalam hal ini yang disimpan di dalam memori utama dapat berupa data atau program.

1. ROM
       ROM (Read-Only-Memory a.k.a firmware) adalah jenis memori yang isinya tidak hilang ketika tidak mendapat aliran listrik dan pada awalnya isinya hanya bisa dibaca. ROM pada komputer disediakan oleh vendor komputer dan berisi program atau data. Di dalam PC, ROM biasa disebut BIOS (Basic Input/Output System) atau ROM-BIOS. Instruksi dalam BIOS inilah yang akan dijalankan oleh mikroprosesor ketka komputer mulai dihidupkan.
 2. RAM
        RAM (Random-Access Memory) adalah jenis memori yang isinya dapat diganti-ganti selama komputer sihidupkan dan bersifat volatile. Selain itu, RAM mempunyai sifat yakni dapat menyimpan dan mengambil data dengan sangat cepat. Tipe RAM pada PC bermacam; antara lain DRAM, SDRAM, SRAM, RDRAM, dan EDO RAM.
3. CACHE MEMORY
        Memori berkapasitas terbatas, memori ini berkecepatan tinggi dan lebih mahal dibandingkan memory utama. Berada diantara memori utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu kepada memori utama tetapi di cache memory yang kecepatan aksesnya yang lebih tinggi, metode menggunakan cache memory ini akan meningkatkan kinerja sistem. Cache memory adalah tipe RAM tercepat yang ada, dan digunakan oleh CPU, hard drive, dan beberapa komponen lainnya.

B.   MEMORI EKSTERNAL
Merupakan memori tambahan yang berfungsi untuk menyimpan data atau program.Contoh: Hardisk, Floppy Disk dllHubungan antara Chace Memori, Memori Utama dan Memori eksternal

1.    Berdasarkan Jenis Akses Data
Berdasarkan jenis aksesnya memori eksternal dikelompokkan menjadi dua jenis yaitu :
     a. DASD (Direct Access Storage Device) di mana ia mempunyai akses langsung terhadap data.
Contoh :
·          Magnetik (floppy disk, hard disk).
·         Removeable hard disk (Zip disk, Flash disk).
·              Optical Disk.
      b. SASD (Sequential Access Storage Device) : Akses data secara tidak langsung (berurutan), seperti pita magnetik.



2.    CACHE MEMORY
Berdasarkan karakteristik bahan pembuatannya, memori eksternal digolongkan menjadi beberapa kelompok sebagai berikut:
a. Punched Card atau kartu berlubang
Merupakan kartu kecil berisi lubang-lubang yang menggambarkan berbagai instruksi atau data. Kartu ini dibaca melalui puch card reader yang sudah tidak digunakan lagi sejak tahun 1979.
b. Magnetic Disk
Magnetic Disk merupakan disk yang terbuat dari bahan yang bersifat magnetik, Contoh : floppy dan harddisk.
c. Optical Disk
Optical disk terbuat dari bahan-bahan optik, seperti dari resin (polycarbonate) dan dilapisi permukaan yang sangat reflektif seperti alumunium. Contoh : CD dan DVD
d. Magnetic Tape
Sedangkan magnetik tape, terbuat dari bahan yang bersifat magnetik tetapi berbentuk pita, seperti halnya pita kaset tape recorder.

Pengertia dan cara penggunaan tipe dsta array pascal |MuridcerdasTKj

Tipe data array merupakan tipe data yang hampir selalu hadir di setiap bahasa pemrograman. Dalam tutorial kali ini pascal saya akan membahas pengertian dan cara penggunaan data array di dalam bahasa pemrograman pascal.

Pengertian Tipe Data Array Pascal

Tipe data array adalah tipe data yang terdiri dari kumpulan tipe data yang lain. Daripada membuat 10 variabel yang terdiri dari nama1 , nama2 , nama3 , dst, akan lebih efisien jika variabel nama ini disimpan ke dalam array.
Sebagai contoh, ikuti kode program berikut ini:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">program tipe_array;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
menggunakan crt;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
var</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  nilai1, nilai2, nilai3, nilai4: integer;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
mulai</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  clrscr;</font></font><font></font>
 <font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  nilai1: = 23;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  nilai2: = 13;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  nilai3: = 98;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  nilai4: = 106;</font></font><font></font>
 <font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  writeln ('nilai1:', nilai1);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  writeln ('nilai2:', nilai2);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  writeln ('nilai3:', nilai3);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  writeln ('nilai4:', nilai4);</font></font><font></font>
 <font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  baca;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
akhir.</font></font>

Dalam contoh ini saya membuat 4 variabel: nilai1, nilai2, nilai3 dan nilai4 . Keempat variabel ini bertipe integer .

Tidak ada yang salah dari kode program di atas. Tapi bagaimana mempertimbangkan kita ingin menyimpan lebih dari 4 nilai, bagaimana jika 10 atau 100 nilai? Tentu tidak efisien jika kita harus membuat variabel nilai1, nilai2, nilai3 … hingga dengan nilai100 . Untuk hal inilah tipe data array lebih cocok digunakan.

Cara Penggunaan Tipe Data Array Pascal

Untuk membuat tipe data array di pascal, kita harus menentukan banyak elemen array yang ingin dibuat. Elemen adalah sebutan untuk 'anggota' / isi dari array. Sebagai contoh, untuk membuat 10 elemen array bertipe integer saya bisa menggunakan kode berikut:
1
2
var<font></font>
  nilai: array[0..9] of integer;
Sekarang, variabel 'nilai' berisi array dengan 10 elemen bertipe integer. Mengenai angka 0..9, ini berarti saya membuat array elemen dari elemen 0, elemen 1, elemen 2, elemen 3, .. hingga elemen 9 (total terdiri 10 elemen).
Bagaimana cara mengakses elemen ini? kita bisa mengaksesnya melalui nomor indeks . Indeks adalah urutan elemen di dalam array. Sebagai contoh, untuk mengakses elemen ke - 2, kita bisa menulis: nilai [2] . Untuk mengakses elemen ke-6, bisa menggunakan: nilai [6] .
Berikut contoh kode program pascal cara penggunaan tipe data array:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
program tipe_array;<font></font>
uses crt;<font></font>
var<font></font>
  nilai: array[0..9] of integer;<font></font>
 <font></font>
  begin<font></font>
  clrscr;<font></font>
 <font></font>
  nilai[0]:= 23;<font></font>
  nilai[1]:= 13;<font></font>
  nilai[2]:= 98;<font></font>
  nilai[3]:= 106;<font></font>
 <font></font>
  writeln('nilai0: ',nilai[0]);<font></font>
  writeln('nilai1: ',nilai[1]);<font></font>
  writeln('nilai2: ',nilai[2]);<font></font>
  writeln('nilai3: ',nilai[3]);<font></font>
 <font></font>
  readln;<font></font>
end.
Contoh kode program untuk tipe data array pascal
Pada contoh di atas, saya membuat variabel ' nilai' sebagai array yang berisi 10 elemen integer . Di dalam variabel ' nilai' ini, array indeks dimulai dari 0 hingga 9, karena saya menulisnya dengan array [0..9] dari integer . Jika Anda ingin membuat 100 elemen array, bisa menulisnya sebagai array [0..99] dari integer .
Meskipun saya membuat 10 elemen, tapi kita tidak perlu mengisi semua elemen ini. Pada contoh tersebut, saya hanya mengisi 4 elemen. Bagaimana dengan elemen lainnya? ini akan menggunakan nilai default (bawaan) pascal, biasanya berisi angka 0 untuk tipe data integer.
Selain itu, kita juga tidak harus mengisinya secara berurutan. Kita bisa mengisi elemen-elemen array secara acak, selama masih dalam batas yang ditentukan. Berikut contohnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
program tipe_array;
uses crt;
var
  nilai: array[0..9] of integer;
  
  begin
  clrscr;
  
  nilai[3]:= 23;
  nilai[9]:= 13;
  nilai[2]:= 98;
  nilai[0]:= 106;
  
  writeln('nilai3: ',nilai[3]);
  writeln('nilai9: ',nilai[9]);
  writeln('nilai2: ',nilai[2]);
  writeln('nilai0: ',nilai[0]);
  
  writeln('nilai1: ',nilai[1]);
  writeln('nilai7: ',nilai[7]);
  
  readln;
end.
Contoh kode program untuk tipe data array pascal
Kali ini saya mengisi elemen secara acak, dan juga saya menampilkan elemen nilai [1] dan nilai [7] yang memang tidak diisi dengan nilai. Bagaimana? pascal akan menggunakan nilai default: 0.
Bagaimana jika kita melewati batas elemen array? Bagaimana saya mengakses elemen ke 10? Pascal akan meneluarkan kesalahan: Rentang periksa kesalahan saat mengevaluasi konstanta .
Galat pascal karena jumlah elemen array berlebihan
Kita tidak hanya bisa membuat array bertipe integer saja, tetapi juga bisa menggunakan tipe lain seperti real , char atau string . Berikut contohnya:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
program tipe_array;<font></font>
uses crt;<font></font>
var<font></font>
  kata: array[20..29] of string[20];<font></font>
begin<font></font>
  clrscr;<font></font>
 <font></font>
  kata[24]:= 'Sedang ';<font></font>
  kata[25]:= 'belajar pascal ';<font></font>
  kata[26]:= 'di ';<font></font>
  kata[27]:= 'Duniailkom.com';<font></font>
 <font></font>
  write(kata[24]);<font></font>
  write(kata[25]);<font></font>
  write(kata[26]);<font></font>
  write(kata[27]);<font></font>
 <font></font>
  readln;<font></font>
end.
Saya membuat variabel kata dengan array melepaskan 10 elemen yang masing-masing isinya adalah string [20] .
Anda dapat melihat saya menggunakan array penomoran mulai dari 20 hingga 29. Ini tidak menjadi masalah, selama kita juga mengaksesnya dengan indeks yang sesuai. Berikut hasil yang didapat:
Contoh kode program untuk tipe data array pascal