Static array is an array of array [0] is shifted to the left then the element will be lost and the next element will be the first element, for the reason that, in panning slider either left or right, dilai array [0] if geserkiri or array [max] if geserkanan values should be saved first, and newly allocated back to the first element and the last element.
#include <iostream.h>
#define maks 5
class Array1D{
friend ostream& operator<<(ostream&, const Array1D&);
friend istream& operator>>(istream&, Array1D&);
public :
Array1D();
void cetak();
void geser_kiri();
void geser_kanan();
private :
char A[maks];
};
Array1D::Array1D(){
for(int i=0;i<maks;i++)
A[i]=’0′;
}
void Array1D::cetak(){
for(int i=0;i<maks;i++)
cout<<A[i]<<” “;
}
ostream& operator<<(ostream& out, const Array1D& x){
for(int i=0;i<maks;i++)
cout<<x.A[i]<<” “;
cout<<endl;
return out;
}
istream& operator>>(istream& in, Array1D& x){
int posisi;
cout<<”Mengisi array pada posisi ke : “;
in>>posisi;
if(posisi>0&&posisi<=maks){
cout<<”Masukan elemen array-nya : “;
in>>x.A[posisi-1];
}
else
cout<<”Anda memasukan posisi diluar range….”;
return in;
}
void Array1D::geser_kanan(){
int n=maks;
int temp=A[n-1];
for(int i=n-1;i>=0;i–)
A[i+1]=A[i];
A[0]=temp;
}
void Array1D::geser_kiri(){
int n=maks;
int temp= A[0];
for(int i=0;i<n;i++)
A[i]=A[i+1];
A[n-1]=temp;
}
int main(){
Array1D x;
cout<<”Array masih kosong : “<<x;
cin>>x;
cout<<”isi array saat ini : “<<x;
x.geser_kiri();
cout<<”isi array setelah digeser kekiri :”<<x;
x.geser_kanan();
cout<<”isi array setelah digeser kekanan :”<<x;
return 0;
}
Selasa, 25 Desember 2012
inheritance or inheritance
inheritance or inheritance, a class can have kids classes. and properties owned or inherited by the father of her children, which is in the public and protected, private parts can only be used by classes that have it.
class Bil_float : public Bilangan {
friend istream& operator>>(istream&, Bil_float&);
friend ostream& operator<<(ostream&, const Bil_float&);
private :
float a;
public :
Bil_float(float x=0.0) : a(x){}
void banding_float(const Bil_float& y, const Bil_float& z){
if(y.a>z.a) cout<<y.a<<”:: y lebih besar dari “<<z.a<<”::z”;
else cout<<y.a<<”::y lebih kecil dari”<<z.a<<”::z”;
}
};
istream& operator>>(istream& in, Bil_float& masuk){
cout<<”masukan bilangan”; in>>masuk.a;
return in;
}
ostream& operator<<(ostream& out, const Bil_float& keluar){
out<<”tampilkan bilangan”<<keluar.a;
return out;
}
class Bil_float : public Bilangan {
friend istream& operator>>(istream&, Bil_float&);
friend ostream& operator<<(ostream&, const Bil_float&);
private :
float a;
public :
Bil_float(float x=0.0) : a(x){}
void banding_float(const Bil_float& y, const Bil_float& z){
if(y.a>z.a) cout<<y.a<<”:: y lebih besar dari “<<z.a<<”::z”;
else cout<<y.a<<”::y lebih kecil dari”<<z.a<<”::z”;
}
};
istream& operator>>(istream& in, Bil_float& masuk){
cout<<”masukan bilangan”; in>>masuk.a;
return in;
}
ostream& operator<<(ostream& out, const Bil_float& keluar){
out<<”tampilkan bilangan”<<keluar.a;
return out;
}
operators - operator overloading
at this time I will discuss the use of operators - operator overloading.
Overloading is the use of multiple methods or properties of the same name, but has a list of parameters / arguments are different. The difference in question is a different number of parameters, different data types, or different from both (the number of parameters and data types). Methods or properties are just different return value (return value) can not be said to be overloading.
#include <cstdlib>
#include <iostream>
using namespace std;
class Bilangan{
friend ostream& operator<<(ostream&, const Bilangan&);
friend istream& operator>>(istream&, Bilangan&);
public :
Bilangan(int a0=0, float b0=0.0) : a(a0), b(b0) { }
void banding_int(const Bilangan&, const Bilangan&);
Bilangan& operator=(const Bilangan&);
Bilangan operator+(const Bilangan&) const;
Bilangan operator-()const;
private:
int a;
float b;
};
ostream& operator<<(ostream& out, const Bilangan& x){
out << “Bagian integer : ” << x.a << endl;
out << “Bagian float : ” << x.b << endl;
return out;
}
void Bilangan::banding_int(const Bilangan& x, const Bilangan& y)
{
if (x.a > y.a) cout << x.a << “::x lebih besar dari ” << y.a << “::y”;
else cout << x.a << “::x lebih kecil dari ” << y.a << “::y”;
}
Bilangan& Bilangan::operator=(const Bilangan& x)
{ a = x.a;
b = x.b;
return *this;
}
istream& operator>>(istream& in, Bilangan& x)
{
cout <<”\nMasukkan bagian integer : “;
in >> x.a;
cout <<”Masukkan bagian float : “;
in >> x.b;
return in;
}
Bilangan Bilangan::operator+(const Bilangan& x) const
{ Bilangan cc;
cc.a = a + x.a;
cc.b = b + x.b;
return cc;
}
Bilangan Bilangan::operator-() const
{ Bilangan x;
x.a = -a;
x.b = -b;
return x;
}
int main(int argc, char *argv[])
{
Bilangan s, t(-2,3.14), d;
cout << “Nilai awal s\n” << s;
cout << “Nilai awal t dari deklarasi\n” << t;
s = t;
cout << “Setelah s di-assign t\n”;
cout << “Nilai s\n” << s;
cout << “Masukkan nilai-nilai objek d”;
cin >> d;
cout << “Setelah d + t => \n” << d+t;
cout << “Nilai d dinegatifkan\n” << -d;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Overloading is the use of multiple methods or properties of the same name, but has a list of parameters / arguments are different. The difference in question is a different number of parameters, different data types, or different from both (the number of parameters and data types). Methods or properties are just different return value (return value) can not be said to be overloading.
#include <cstdlib>
#include <iostream>
using namespace std;
class Bilangan{
friend ostream& operator<<(ostream&, const Bilangan&);
friend istream& operator>>(istream&, Bilangan&);
public :
Bilangan(int a0=0, float b0=0.0) : a(a0), b(b0) { }
void banding_int(const Bilangan&, const Bilangan&);
Bilangan& operator=(const Bilangan&);
Bilangan operator+(const Bilangan&) const;
Bilangan operator-()const;
private:
int a;
float b;
};
ostream& operator<<(ostream& out, const Bilangan& x){
out << “Bagian integer : ” << x.a << endl;
out << “Bagian float : ” << x.b << endl;
return out;
}
void Bilangan::banding_int(const Bilangan& x, const Bilangan& y)
{
if (x.a > y.a) cout << x.a << “::x lebih besar dari ” << y.a << “::y”;
else cout << x.a << “::x lebih kecil dari ” << y.a << “::y”;
}
Bilangan& Bilangan::operator=(const Bilangan& x)
{ a = x.a;
b = x.b;
return *this;
}
istream& operator>>(istream& in, Bilangan& x)
{
cout <<”\nMasukkan bagian integer : “;
in >> x.a;
cout <<”Masukkan bagian float : “;
in >> x.b;
return in;
}
Bilangan Bilangan::operator+(const Bilangan& x) const
{ Bilangan cc;
cc.a = a + x.a;
cc.b = b + x.b;
return cc;
}
Bilangan Bilangan::operator-() const
{ Bilangan x;
x.a = -a;
x.b = -b;
return x;
}
int main(int argc, char *argv[])
{
Bilangan s, t(-2,3.14), d;
cout << “Nilai awal s\n” << s;
cout << “Nilai awal t dari deklarasi\n” << t;
s = t;
cout << “Setelah s di-assign t\n”;
cout << “Nilai s\n” << s;
cout << “Masukkan nilai-nilai objek d”;
cin >> d;
cout << “Setelah d + t => \n” << d+t;
cout << “Nilai d dinegatifkan\n” << -d;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Link List
Link List is a form of dynamic data structures and inter-connect - connect.
Link List is more flexible to use than arrays, because it is dynamic (no limit data), in contrast to the data array has a maximum limit. Link List can be linked to a variable of type pointer.
and below is a sample program:
#include <cstdlib>
#include <iostream>
using namespace std;
class Node{
friend class List;
friend ostream& operator<<(ostream&, const List&);
public:
Node(char& t, Node* p) : info(t), berikut(p){}
protected:
char info;
Node *berikut;
};
class List{
friend ostream& operator<<(ostream&, const List&);
public:
List() : kepala(0){}
~List();
void sisip(char t);
int hapus(char& t);
int kosong() {return (kepala == 0);}
void cetak();
protected:
Node* kepala;
Node* nodeBaru(char& t,Node* p)
{Node* q = new Node(t,p); return q;}
};
ostream& operator<<(ostream& out, const List& k)
{
for(Node* p=k.kepala;p;p=p->berikut)
out << p->info <<" ->";
out << "*\n";
return out;
}
List::~List()
{
Node* temp;
for(Node* p=kepala;p;)
{
temp=p;
p=p->berikut;
delete temp;
}
}
void List::sisip(char t)
{
cout << t << "masuk list:";
Node* p=nodeBaru(t,kepala);
kepala=p;
}
int List::hapus(char& t)
{
if(kosong()) return 0;
t=kepala->info;
Node *p = kepala;
kepala=kepala->berikut;
delete p;
return 1;
}
void List::cetak()
{
for (Node* p = kepala; p; p=p->berikut)
cout << p->info <<" ->";
cout << "*\n";
}
int main(int argc, char *argv[])
{
List x;
char data;
x.sisip('a');
cout << x;
x.sisip('b');
cout << x;
x.sisip('c');
cout << x;
x.sisip('d');
cout << x;
for (int i=0; i<5; i++){
x.hapus(data);
cout << data << " dihapus dari list :";
cout << x;
}
system("PAUSE");
return EXIT_SUCCESS;
}
semoga bermanfaat (^_^)
Link List is more flexible to use than arrays, because it is dynamic (no limit data), in contrast to the data array has a maximum limit. Link List can be linked to a variable of type pointer.
and below is a sample program:
#include <cstdlib>
#include <iostream>
using namespace std;
class Node{
friend class List;
friend ostream& operator<<(ostream&, const List&);
public:
Node(char& t, Node* p) : info(t), berikut(p){}
protected:
char info;
Node *berikut;
};
class List{
friend ostream& operator<<(ostream&, const List&);
public:
List() : kepala(0){}
~List();
void sisip(char t);
int hapus(char& t);
int kosong() {return (kepala == 0);}
void cetak();
protected:
Node* kepala;
Node* nodeBaru(char& t,Node* p)
{Node* q = new Node(t,p); return q;}
};
ostream& operator<<(ostream& out, const List& k)
{
for(Node* p=k.kepala;p;p=p->berikut)
out << p->info <<" ->";
out << "*\n";
return out;
}
List::~List()
{
Node* temp;
for(Node* p=kepala;p;)
{
temp=p;
p=p->berikut;
delete temp;
}
}
void List::sisip(char t)
{
cout << t << "masuk list:";
Node* p=nodeBaru(t,kepala);
kepala=p;
}
int List::hapus(char& t)
{
if(kosong()) return 0;
t=kepala->info;
Node *p = kepala;
kepala=kepala->berikut;
delete p;
return 1;
}
void List::cetak()
{
for (Node* p = kepala; p; p=p->berikut)
cout << p->info <<" ->";
cout << "*\n";
}
int main(int argc, char *argv[])
{
List x;
char data;
x.sisip('a');
cout << x;
x.sisip('b');
cout << x;
x.sisip('c');
cout << x;
x.sisip('d');
cout << x;
for (int i=0; i<5; i++){
x.hapus(data);
cout << data << " dihapus dari list :";
cout << x;
}
system("PAUSE");
return EXIT_SUCCESS;
}
semoga bermanfaat (^_^)
Senin, 10 Desember 2012
FUNGSI TEKNOLOGI RAID
Raid adalah singkatan dari
Redundant Array of the Inexpensive Disk, pada awalnya Raid digunakan untuk
SistemKomputer guna melakukan proses mirroring dan striping. Mode striping ini biasanya
dikenal dengan sebutan Raid 0, tujuannya menggabung dua buah hard disk sehingga
dikenali operating sistem sebagai satu drive yang merupakan penjumlahan 2
kapasitas dari dua hard disk yang di set untuk Raid 0, membawa keuntungan untuk
mempercepat proses Read dan write dibanding single hard disk dengan spesifikasi
yang sama. pada Miroring atau Raid 1 berguna untuk mengutamakan security pada
enterprise user bahkan data sensitif user daripada peforma, namun kecepatan
Read meningkat karena dapat membaca data yang sama secara bersamaan, raid 1 ini
membutuhkan minimmal dua buah hard disk.
Pada saat di mana PC belum
secanggih sekarang, untuk dapat melakukan raid Anda masih perlu card pci
tambahan, karena chipset motherboard jaman dahulu tidak mendukung fungsi raid,
jadi untuk dapat menikmati teknologi Raid jaman dahulu, selain membutuhkan 2
HDD, Anda juga harus membeli PCI card (total budget yang harus dikeluarkan jadi
lebih mahal) . Namun sekarang anda tidak perlu khawatir karena chipset sudah
semakin maju pesat sehingga fungsi Raid pun dapat dimasukan pada single chipset
I/O. bahkan Anda sudah dapat menikmati teknologi raid ini pada Notebook.
Notebook Workstation dan gaming based umumnya mendukung teknologi Raid karena
sesuai dengan kebutuhannya akan high performance.
Raid 1
Saat ini Teknologi Raid banyak
sekali digunakan oleh PC Enthusiast dan workstation dalam meningkatkan
Performance Rig nya. Hal ini wajar saja, karena komponen PC sudah semakin maju
dan canggih, namun komponen terlambat pada sebuah PC adalah hard disk atau
sering disebut paling bottleneck, walaupun Anda menggunakan 10.000 rpm HDD
tetap saja tidak dapat mengimbangi kecepatan komunikasi chipset dengan memory
utama. Walaupun begitu, storage sudah dibuat sedemikian rupa ke arah Flash
based yang sekarang disebut solid state disk (SSD) yang memiliki kecepatan jauh
melebihi mekanik dari kepingan HDD. Terlebih lagi jika SSD yang sudah Flash
based ini buat dalam bentuk Raid 0 tentunya akan semakin cepat. untuk
mengetahui lebih jelasnya Anda dapat melanjutkan Artikel ini dengan Video
Review kami tentang Raid dan komparasi HDD vs SSD dua-dua nya pada raid 0.
PERBEDAAN TEKNOLOGI
CD,DVD,BLUERAY
CD (Compact Disk)
CD adalah disk Optik generasi
pertama yang menggantikan disket (Flopy Disk) pada masa itu, karena CD memiliki
kapasitas yang lebih besar dari disket sedangkan harga hampir sama. CD banyak
di gunakan untuk Film resolusi kecil, video music, software aplikasi dan
data-data penting yang akan di kirimkan karena dulu masi belum banyak internet
yg bisa mengirimkan data dokumen melalui e-mail.CD memiliki kapasitas
penyimpanan data 700 MB pada CD single Layer dan menggunakan teknologi Laser
merah dengan panjang gelombang 780 nm (nano meter), sedangkan letak penyimpanan
datanya (layer) ada di bagian atas dari disk, jadi jika bagian atas (label dari
merek CD) rusak atau tergores maka CD tidak akan bisa di gunakan lagi, begitu
juga dengan bagian bawahnya jika kotor banyak tertutup kotoran atau banyak
goresan maka Optik laser merah akan sulit membaca data sehingga membutuhkan
proses lama untuk membacanya, lebih baik bersihkan dulu sebelum di gunakan.
Contohnya :
DVD (Digital Versatile Disc)
DVD adalah disk Optik generasi
ke-dua pengembangan dari CD yang memiliki kapasitas lebih besar 7x keping CD
setiap keping DVD atau berkapasitas 4,7 GB single layer dan dapat memutar film
dengan resolusi 720x480 pixel, makanya kebanyakan DVD sekarang digunakan
sebagai pemutar film, karena harganya lebih murah perkeping daripada membeli 7
keping CD dan bisa menekan biaya produksi.DVD masih menggunakan teknologi laser
merah dengan panjang gelombang 635-650 nm (nano meter), sedangkan letak
penyimpanan datanya (layer) ada di bagian tengah dari disk, jadi data lebih
aman dari kerusakan disk tetapi jika bagian bawahnya kotor sama halnya seperti
CD karena banyak tertutup kotoran atau banyak goresan maka Optik laser merah
akan sulit membaca data sehingga membutuhkan proses lama untuk membacanya,
bahkan menimbulkan kerusakan pada Optik playernya. lebih baik bersihkan dulu
sebelum di gunakan.
Contoh Gambarnya :
Blu-Ray Disk dan HD-DVD (High Definition DVD)
Blu-Ray dan HD-DVD dua teknologi
penyimpan optik yang baru yang berjuang seperti masa kesuksesan DVD. Dengan
pengenalan dari definisi tertinggi TV (HDTV televisi berdefinisi tinggi), DVD
sebagai kapasitas penyimpan menunjukkan ketidak efisiennya pada aplikasi ini.
DVD mendukung resolusi sampai dengan 720x480 piksel, selagi HDTV ( televisi
berdefinisi tinggi) bekerja dengan resolusi-resolusi setinggi 1920x1080 piksel.
Hanya untuk memberi anda satu gagasan, dua jam video definisi ketinggian dengan
tekanan data memerlukan 22 GB dari kapasitas penyimpanan. ingatlah bahwa
kapasitas maksimum suatu DVD adalah 17 GB, jika disk DVD-18 digunakan (dual
side/ dual layer disk).Teknologi Blu-Ray dan HD-DVD memakai sinar laser ungu -
biru untuk membaca dan menulis data dari disk. Laser ini mempunyai panjang
gelombang yang lebih kecil yaitu 405 nm (nano meter) yang dibandingkan dengan
laser yang merah yang digunakan oleh pemain-pemain DVD dan CD, memberikan suatu
densitas perekaman yang lebih tinggi (lebih kecil panjang gelombang maka akan
lebih banyak/padat data yang di tuliskan), Blu-Ray Disk memiliki kapasitas 25
GB single layer sedangkan HD-DVD memiliki kapasitas 15 GB single layer.
Sedangkan letak layer penyimpanan datanya pada Blu-Ray Disk terletak di bagian
bawah sedangkan HD-DVD layer penyimpanan data terletak di bagian tengah seperti
halnya DVD.
Contoh Gambarnya :
KARAKTERISTIK MEMORI
Pengertian Memori – Memori merupakan perangkat yang amat penting dalam sistem berbasis mikroprosesor, mikrokontroller, maupun PC. Memori digunakan untuk menyimpan data baik yang digunakan sebagai program maupun sebagai penyimpan data yang diproses oleh CPU. Dua tipe memori yang dikenal adalah RAM (Random Access Memory) dan ROM (Read Only Memory). Kedua jenis memori ini jika digunakan pada sistem berbasis mikroprosesor umumnya diletakkan pada ruang pengaksesan yang berbeda. Hal ini dapat dilakukan dengan membuat peta memori untuk kedua jenis memori ini
1. Lokasi memori berada pada 3 lokasi, yaitu:
Memori Local atau sering disebut dengan register.
Built-in berada dalam CPU, diperlukan untuk semua kegitan CPU.
Memori Internal atau sering disebut dengan memory
primer atau memory utama. Berada diluar CPU bersifat internal pada system
computer, diperlukan oleh CPU dalam proses eksekusi (operasi) program sehingga
dapat diakses secara langsung oleh CPU tanpa melalui perantara.
Memori Eksternal atau sering disebut dengan memori
sekunder. Bersifat eksternal dan berada di luar CPU, diperlukan dlam menyimpan
data atau instruksi secara permanen, terdiri atas perangkat storage seperti:
disk, pita magnetik, dll
2. Kapasitas Memory
Kapasitas register dinyatakan dalam bit.
Kapasitas memory internal dinyatakan dalam bentuk
byte (1 byte = 8 bit) atau word.
Kapasitas memori eksternal dinyatakan dalam byte.
3. Satuan Transfer
Memory Internal. Satuan transfer merupakan jumlah
bit yang dibaca atau ditulis ke dalam memori pada suatu saat.
Memory Eksternal. Data ditransfer dalam jumlah yang
jauh lebih besar dari word, yang dikenal dengan block.
4. Metode Akses Memory
Ada 4 jenis pengaksesan data satuan, yaitu:
Sequentaial Access. Diorganisasikan menjadi
unit-unit data yang disebut record, dibuat dalam bentuk urutan linier yang
spesifik. Contoh sequential access adalah akses pada pita magnetic.
Direct Access. Menggunakan shared read/write
mechanism tetapi setiap blok dan record memliki alamat yang unik berdasarkan
lokasi fisik. Contoh direct access adalah akses pada disk.
Random Access. Dapat dipilih secara random, waktu
mengakses lokasi tidak tergantung pada urutan akses sebelumnya dan bersifat
konstan. Contoh random access adalah system memori utama.
Associative Access. Setiap word dapat dicari
berdasarkan pada isinya dan bukan berdasarkan alamatnya, waktu pencariannya
tidak bergantung secara konstan terhadap lokasi atau pola access sebelumnya.
Contoh associative access adalah memory cache.
5. Kinerja memory
3 buah parameter untuk kinerja system memory, yaitu:
Access Time. Bagi RAM waktu akses adalah waktu yang
dibutuhkan untuk melakukan operasi baca atau tulis. Bagi non RAM waktu akses
adalah waktu yang dibutuhkan untuk melakukan mekanisme baca tulis pada lokasi
tertentu.
Cycle Time. Waktu akses ditambah dengan waktu
transien hingga sinyal hilang dari saluran sinyal untuk menghasilkan kembali
data bila data ini dibaca secara destruktif.
Transfer Rate. Merupakan kecepatan pemindahan data
ke unit memori atau ditransfer dari unit memory. Bagi RAM, transfer rate sama
dengan . Bagi non-RAM, transfer rate
sama dengan , dimana Waktu rata-rata
untuk membaca atau menulis sejumlah N bit,
waktu akses rata-rata, Jumlah
bit, kecepatan transfer dalam bit per
detik.
6. Tipe Fisik Memory
Ada dua tipe fisk memory, yaitu:
Memory Semikonduktor. Memory ini memakai teknologi
LSI atau VLI, memory ini banyak digunakan untuk memory internal misalnya RAM.
Memory Permukaan Magnetik. Banyak digunaakan untuk
memory eksternal yaitu untuk disk atau pita magnetic.
7. Karakteristik Fisik
Volatile dan Non-volatile. Pada memory volatile
informasi akan hilang bila listrik dimatika. Pada memory Non-volatile informasi
akan tetap berada tanpa mengalami kerusakan sebelum dilakukan perubahan, memory
ini daya listrik tidak diperlukan untuk mempertahankan informasi tersebut.
Erasable dan Non Erasable. Erasable artiny isi
memory dapat dihapus dan diganti dengan informasi lain.
8. Organisasi
Organisasi dalah pengaturan bit dalam menyusun word secara
fisik.
Hirarki Memory : Semakin kecil waktu access, semakin
besar harga per bit. Semakin besar kapasitas, semakin keci harga per bit.
Semakin besar kapasitas, semakin besar waktu access
Untuk kinerja yang optimal, diperlukan kombinasi
teknologi komponen memori.
STATIC MEMORI DAN DYNAMIC MEMORI
-Static RAM
Secara internal, setiap sel yang menyimpan n bit
data memiliki 4 buah transistor yang menyusun beberapa buah rangkaian Flip-
flop. Dengan karakteristik rangkaian Flip- flop ini, data yang disimpan
hanyalah berupa Hidup (High state) dan Mati (Low State) yang ditentukan oleh
keadaan suatu transistor. Kecepatannya dibandingkan dengan Dynamic RAM tentu
saja lebih tinggi karena tidak diperlukan sinyal refresh untuk mempertahankan
isi memory.
-Dynamic RAM
Secara internal, setiap sel yang menyimpan 1 bit
data memiliki 1 buah transistor dan 1 buah kondensator. Kondensator ini yang
menjaga tegangan agar tetap mengaliri transistor sehingga tetap dapat menyimpan
data. Oleh karena penjagaan arus itu harus dilakukan setiap beberapa saat (yang
disebut refreshing) maka proses ini memakan waktu yang lebih banyak daripada
kinerja Static RAM. Secara internal, setiap sel yang menyimpan 1 bit data
memiliki 1 buah transistor dan 1 buah kondensator. Kondensator ini yang menjaga
tegangan agar tetap mengaliri transistor sehingga tetap dapat menyimpan data.
Oleh karena penjagaan arus itu harus dilakukan setiap beberapa saat (yang
disebut refreshing) maka proses ini memakan waktu yang lebih banyak daripada
kinerja Static RAM.
Memory Volatile dan Memory
Non-Volatile
Memory Volatile
Memory volatile adalah memori yang datanya dapat ditulis atau
dihapus, dan data akan hilang ketika tidak mendapat power / daya. Memory jenis
ini hanya untuk penyimpanan data sementara saja, bukan untuk jangka waktu yang
lama. Contoh dari memory volatile adalah RAM (Random Access Memory) digunakan
sebagai
memori
utama untuk menyimpan program‐program atau data‐data yang sedang digunakan atau diperlukan oleh CPU saat dibutuhkan
saja (sementara).
Memory Non-Volatile
Memory Non‐Volatile adalah memory
yang datanya dapat ditulis dan dihapus, akan tetapi datanya tidak hilang ketika
tidak mendapat daya. Memory jenis ini banyak digunakan untuk menyimpan data
dalam jangka waktu yang lama. Contoh memory non‐volatile adalah Hardisk, Flashdisk, SD
Card, dll. Hardisk pun ada 2 jenis, yaitu internal dan external.
Fungsi Bus
Fungsi dari bus adalah. Bus merupakan lintasan komunikasi yang menghubungkan dua atau lebih perangkat. Karakteristik penting sebuah bus adalah bahwa bus merupakan media transmisi yang dapat digunakan bersama. Sejumlah perangkat yang terhubung ke bus, dan suatu signal yang ditransmisikan oleh salah satu perangkat ini dapat diterima oleh salah satu perangkat yang terhubung ke bus. Bila dua buah perangkat melakukan transmisi dalam waktu yang bersamaan, maka signal-signalnya akan bertumpang tindih dan menjadi rusak. Dengan demikian, hanya sebuah perangkat saja yang akan berhasil melakukan transmisi pada suatu saat tertentu.
Fungsi dari tiap-tiap bus adalah sebagai berikut:
Bus data berfungsi sebagai jalan data dari satu komponen ke komponen lain.
Bus alamat digunakan oleh mikroprosesor untuk memilih lokasi memori atau port yang akan ditulis atau dibaca.
Bus kontrol digunakan mikroprosesor antara lain untuk mengatur memori atau port agar siap ditulis atau dibaca.
Langganan:
Postingan (Atom)





