Sistem Komputer |
Sistem Komputer, Abstraksi dan Representasi Data
a. Sistem Komputer
Sistem Komputer adalah kumpulan perangkat-perangkat komputer yang saling berhubungan dan berinteraksi satu sama lain untuk melakukan proses pengolahan data, sehingga dapat menghasilkan informasi yang diharapkan oleh penggunanya. Perangkat yang terdapat pada sistem komputer yakni: hardware, software dan brainware. Saat beroperasinya perangkat-perangkat komputer tersebut akan bekerja dan saling mendukung satu sama lain.
Hardware tidak akan berfungsi tanpa adanya software dan juga sebaliknya, dan keduanya tidak akan bermanfaat untuk menghasilkan informasi jika tidak ada brainware atau orang yang mengoperasikan dan memberikan perintah. Jadi dapat dikatakan bahwa komputer bukan sebagai sebuah alat saja tapi juga merupakan sebuah sistem.
b. Komponen Sistem Komputer
1) Perangkat Keras (Hardware)
Hardware merupakan perangkat komputer yang memiliki wujud fisik, jadi perangkat ini dapat disentuh. Perangkat keras seperti: motherboard, processor, harddisk, memory, keyboard, mouse, monitor, dan power supply.
Hardware pada umumnya dibagi menjadi empat bagian, yakni:
a) Input Device
Merupakan perangkat pada hardware komputer yang fungsinya sebagai alat untuk memasukkan data-data atau perintah pada komputer, seperti: Keyboard, mouse, web cam, scanner dan lain-lain.
b) Output Device
Merupakan perangkat pada komputer yang fungsinya untuk menampilkan hasil pemprosesan data-data. Misalnya seperti monitor, printer, projektor dan lain-lain.
c) Processing Device
Merupakan perangkat pada hardware komputer yang fungsinya sebagai pusat pengolahan data. Perangkat ini kadang disebut sebagai otak komputer atau disebut sebagai CPU (Central Processing Unit). Processing Device akan melakukan komunikasi dengan perangkat input, output dan storage untuk melaksanakan perintah-perintah yang dimasukkan.
Menurut Hisham (2018), Process Device terdiri dari CPU, Memori, Motherboard, Power Supply, dan VGA. Foto beberapa Processing Device.
d) Storage Device (Perangkat penyimpanan)
CPU juga dilengkapi dengan alat penyimpanan data. Terdapat alat penyimpanan data dengan kapasitas yang lebih besar sebagai perangkat penyimpanan utamanya berupa harddisk. Jadi kita dapat menyimpan dan menghapus data sesuai dengan keinginan pengguna. Seiring berkembangnya teknologi komputer, media storage device berkembang pula dengan sangat pesat, baik kapasitas maupun bentuknya. Pada komputer, storage device dibagi menjadi dua bagian, yaitu penyimpanan internal dan eksternal.
Internal storage berupa harddisk, memiliki kapasitas yang lebih besar karena digunakan sebagai media penyimpanan utama pada komputer. Sementara untuk perangkat penyimpanan sementara saat melakukan proses pengolahan data, yaitu RAM (Random Access Memory). Lalu External Storage yaitu perangkat keras untuk melakukan penulisan, pembacaan, dan penyimpanan data diluar dari perangkat penyimpanan utama. Perangkat External Storage seperti harddisk external, DVD, flashdisk dan lain-lain.
2) Perangkat Lunak (Software)
Perangkat lunak sering disebut set program atau instruksi yang digunakan dengan perangkat keras, mengenai proses yang akan dilakukan untuk berkomunikasi. Software dapat diartikan juga sebagai suatu kumpulan data elektronik yang tersimpan dan diatur oleh komputer, bisa berupa program ataupun koneksi untuk menjalankan berbagai macam instruksi perintah untuk mengontrol perangkat keras. Software dibedakan menjadi beberapa macam, yakni: sistem operasi, program aplikasi, program tambahan, dan bahasa pemprograman.
a) Sistem Operasi
Sistem Operasi komputer merupakan program dasar pada komputer yang umumnya berfungsi untuk menghubungkan pengguna dengan hardware. Dapat dikatakan juga sistem operasi yaitu perangkat lunak yang bertugas untuk melakukan kontrol dan memanajemen perangkat keras dan operasi-operasi yang dilakukan pada sistem, termasuk juga menjalankan aplikasi-aplikasi yang dapat melakukan pengolahan data. Contoh sistem operasi komputer misalnya seperti Microsoft Windows, Linux, Mac OS, dan lain-lain.
b) Program Aplikasi
Program aplikasi merupakan perangkat lunak yang siap untuk dipakai. Program aplikasi digunakan untuk membantu pekerjaan pengguna komputer dalam mengolah berbagai macam data. Pada sebuah komputer perangkat lunak ini sering disiapkan sesuai dengan selera dan kebutuhan penggunanya. Misalnya seperti Microsoft Excel, Microsoft Word, Microsoft Access, Photo Shop, Chrome, Mozilla dan lain-lain.
c) Program Tambahan
Merupakan perangkat lunak yang fungsinya untuk menjalankan tugas-tugas tambahan, disebut juga sebagai program dukungan dan memiliki fungsi tertentu. Misalnya seperti program yang disediakan oleh sistem operasi seperti Data recovery, Disk Defragmenter, Sceensever, Backup, dan lain-lain.
d) Bahasa Pemrograman
Merupakan bahasa yang dapat digunakan pengguna komputer untuk berkomunikasi dengan komputer, dapat dikatakan juga sebagai standar bahasa instruksi untuk berkomunikasi dan memberikan perintah pada komputer. Beberapa contoh bahasa pemerograman diantaranya seperti PHP, Java, Python, C, Perl dan lain-lain.
3) Pengguna (Brainware)
Brainware yaitu orang yang menjalankan atau mengoperasikan komputer. Brainware sangat penting karena komputer tidak dapat bermanfaat jika tidak dioperasikan oleh manusia. Jadi brainware merupakan setiap orang yang terlibat dalam kegiatan-kegiatan pemanfaatan komputer. Pengguna komputer umumnya dibagi ke dalam 4 (empat) macam, antara lain: programer, tenaga analis sistem, administrator, dan operator atau pemakai.
a) Programer
Merupakan orang yang mempunyai keahlian menguasai banyak ataupun salah satu bahasa pemprograman, beberapa bahasa pemprograman yang sering digunakan misalnya seperti PHP, Java, Phyton, C dan lain-lain.
b) Tenaga Analis Sistem
Merupakan orang yang memiliki tanggung jawab terhadap penelitian, perencanaan, penkoordinasian dan merekomendasikan pilihan software, hardware dan sistem yang sesuai dengan kebutuhan penggunanya (perorangan, organisasi dan perusahaan). Seorang sistem analis perlu memiliki 4 (empat) keahlian seperti analisis, teknis, manajerial dan cara berkomunikasi dengan orang lain atau interpersonal.
c) Administrator
Merupakan orang yang tugasnya mengelola suatu sistem operasi dan juga beberapa program yang sedang berjalan pada sistem komputer.
d) Operator
Merupakan orang yang memanfaatkan sistem komputer yang telah ada atau dia hanya menggunakan aplikasi-aplikasi tertentu saja untuk mengolah data.
c. Konsep abstraksi
Konsep abstraksi data adalah proses representasi data dan program dalam bentuk sama dengan pengertiannya, dengan menyembunyikan rincian/detil dari implementasi. Abstraksi data adalah tingkatan pengguna dalam memandang bagaimana sebenarnya data diolah dalam sebuah sistem database. Abstraksi data bertujuan untuk memudahkan pengguna dalam penggunaan data dan dengan kontrol akses dapat menutup rincian yang tak penting dari unit diluar lampiran yang dipakai.
1) Introduksi Tipe Data Abstraksi
Sebuah tipe data abstrak merupakan tipe data yang dapat didefinisikan oleh user (user-defined) yang memenuhi dua kondisi berikut:
a) Representasi objek dari tipe disembunyikan dari unit program yang menggunakan object, maka mungkin hanya operasi yang tersedia pada definisi tipe. Keuntungan dari abstraksi data :
- Reliability
- Mengurangi jangkauan dari variabel dan kode yang harus diperhatikan oleh programmer
- Konflik akibat penamaan berkurang
b) Deklarasi tipe dan protocol operasi pada tipe objects tersedia pada unit sintatik tungal.Unit program lainnya hanya memperbolehkan untuk membentuk variabel yang tipenya terdefinisikan. Keuntungan dari abstraksi data :
- Memberikan metode dari organisasi program
- Aids modifiability (semua yang terkait stuktur data selalu bersama)
- Kompilasi terpisah
2) Parameterized Abstract Data Types
Penggunaan parameterized abstract data types sangat mempermudah pekerjaan. Contohnya, kita dapat mendesain sebuah tumpukan dari tipe data abstrak yang dapat menyimpan elemen tipe scalar dibandingkan daripada menulis tumpukan abstraksi secara terpisah untuk tipe scalar yang berbeda. Contoh parameterized abstract data types pada C++:
- a) Sebuah tipe data abstrak parameter berarti bahwa tipe data generik
- b) Ada dan C ++ memungkinkan untuk generik atau parameter tipe data abstrak
- c) Generik jenis ini dianggap template.
- d) Constructor, berfungsi sebagai inisialisasi sebuah data dari suatu instance. Dalam class harus dibuat.
- e) Destructor, berfungsi sebagai penghancur sebuah data dari suatu constructor. Dalam class harus dibuat jika tidak di buat maka memori akan penuh karena data tidak pernah di hancurkan.
3) Konstruksi Encapsulation
Dalam bahasa pemrograman, enkapsulasi digunakan untuk merujuk kepada salah satu dari dua konsep terkait tetapi berbeda, dan kadang-kadang untuk kombinasi dari padanya:
a) Mekanisme bahasa untuk membatasi akses langsung ke beberapa komponen objek.
b) konstruksi bahasa yang memfasilitasi bundling data dengan metode (atau fungsi lainnya) yang beroperasi pada data tersebut.
Enkapsulasi adalah pengelompokan subprogram dan data yang mereka memanipulasi. Sebuah enkapsulasi menyediakan sebuah sistem abstrak dan organisasi logis untuk koleksi perhitungan terkait. Mereka sering ditempatkan di perpustakaan dan tersedia untuk digunakan kembali dalam program lain daripada yang digunakan mereka ditulis.
a) Nested Subprogram
Mengatur program dengan membuat definisi subprogram yang bersarang (nested) dalam subprogram yang lebih besar untuk digunakan. Nested subprogram didukung pada bahasa pemograman Ada, Fortran 95+, Phyton, Java Script dan Ruby.
b) Naming Encapsulation
Penamaan enkapsulasi mendefinisikan lingkup nama yang membantu dalam menghindari ini nama konflik.
d. Konsep representasi data
Data adalah bilangan biner atau informasi berkode biner lain yang dioperasikan untuk mencapai beberapa hasil penghitungan penghitungan aritmatik, pemrosesan data dan operasi logika. Adapun beberapa tipe data, yaitu:
- 1) Data numerik, merepresentasikan integer dan pecahan fixed-point, real floating-point dan desimal berkode biner.
- 2) Data logikal, digunakan oleh operasi logika dan untuk menentukan atau memeriksa kondisi seperti yang dibutuhkan untuk instruksi bercabang kondisi.
- 3) Data bit-tunggal, untuk operasi seperti SHIFT, CLEAR dan TEST.
- 4) Data alfanumerik, data yang tidak hanya dikodekan dengan bilangan tetapi juga dengan huruf dari alpabet dan karakter khusus lainnya
e. Sistem Bilangan
Ada beberapa sistem bilangan yang digunakan dalam sistem digital. Yang umum adalah sistem bilangan desimal, oktal, heksadesimal dan biner.
1) Biner (radiks / basis 2)
- a) Notasi : (n)2
- b) Simbol : angka 0 dan 1
2) Oktal(radiks / basis 8)
- a) Notasi : (n)8
- b) Simbol : angka 0, 1, 2, 3, 4, 5, 6, 7
3) Desimal(radiks / basis 10)
- a) Notasi : (n)10
- b) Simbol : angka 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
4) Heksadesimal (radiks / basis 16)
- a) Notasi : (n)16
- b) Simbol : angka 0,1,2,3,4,5,6,7,8,9,A,B, C,D,E,F
Sistem yang biasa digunakan dan familiar dengan kita sehari-hari adalah sistem bilangan desimal. Bilangan desimal ini sering juga disebut basis 10. Kesepuluh lambang tersebut adalah :
D = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }
f. Mengenal Konsep Bilangan Biner dan Desimal
Sistem bilangan biner merupakan sistem bilangan yang paling banyak digunakan dalam sistem digital karena sistem bilangan ini secara langsung dapat mewakili logika yang ada. Sistem digital hanya mengenal dua logika, yaitu 0 dan 1. Logika 0 biasanya mewakili kondisi mati dan logika 1 mewakili kondisi hidup. Pada sistem bilangan biner, hanya dikenal dua lambang, yaitu 0 dan 1. Karena itu, sistem bilangan biner paling sering digunakan untuk merepresentasikan kuantitas dan mewakili keadaaan dalam sistem digital maupun sistem komputer. Digit bilangan biner disebut binary digit atau bit. Empat bit dinamakan nibble dan delapan bit dinamakan byte. Perbedaan mendasar dari metoda biner dan desimal adalah berkenaan dengan basis. Jika desimal berbasis 10 (X10) berpangkatkan 10x, maka untuk bilangan biner berbasiskan 2 (X2) menggunakan perpangkatan 2x. Pada sistem ini, hanya dikenal dua lambang bilangan, yaitu: B = { 0, 1 }.
Ciri suatu bilangan biner adalah adanya tambahan subskrip bin (biner) atau 2 atau tambahan huruf B di akhir bilangan. Contoh:
1010011bin = 10100112 = 1010011B.
Perhatikan contoh di bawah ini!
Untuk Desimal:
14(10) = (1 x 101) + (4 x 100)
= 10 + 4
= 14
Untuk Biner:
1110(2) = (1 x 23) + (1 x 22) + (1 x 21) + (0 x 20)
= 8 + 4 + 2 + 0
= 14
Bentuk umum dari bilangan biner dan bilangan desimal adalah:
Sekarang kita balik lagi ke contoh soal di atas! Dari mana kita dapatkan
Biner | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 11111111 |
---|---|---|---|---|---|---|---|---|---|
Desimal | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | 255 |
Pangkat | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | X^1-7 |
Angka desimal 14(10) menjadi angka biner 1110(2)?
Mari kita lihat lagi pada bentuk umumnya!
Biner | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 00001110 |
---|---|---|---|---|---|---|---|---|---|
Desimal | 0 | 0 | 0 | 0 | 8 | 4 | 2 | 0 | 14 |
Pangkat | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | X^1-7 |
Telusuri perlahan-lahan!
1) Pertama sekali, kita jumlahkan angka pada desimal sehingga menjadi 14. anda lihat angka-angka yang menghasilkan angka 14 adalah 8, 4, dan 2!
2) Untuk angka-angka yang membentuk angka 14 (lihat angka yang diarsir), diberi tanda biner 1, selebihnya diberi tanda 0. Sehingga kalau dibaca dari kanan, angka desimal 14 akan menjadi 00001110 (terkadang dibaca 1110) pada angka biner-nya.
g. Mengubah Angka Biner ke Desimal
Perhatikan contoh!
1) 11001101(2)
Biner | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 11001101 |
---|---|---|---|---|---|---|---|---|---|
Desimal | 128 | 64 | 0 | 0 | 8 | 4 | 0 | 1 | 205 |
Pangkat | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | X^1-7 |
Angka desimal 205 didapat dari penjumlahan angka yang di arsir (128+64+8+4+1) Setiap biner yang bertanda 1 akan dihitung, sementara biner yang bertanda 0 tidak dihitung, alias 0 juga.
h. Mengubah Angka Desimal ke Biner
Untuk mengubah angka desimal menjadi angka biner digunakan metode pembagian dengan angka 2 sambil memperhatikan sisanya.
i. Penjumlahan Biner
Penjumlahan biner tidak begitu beda jauh dengan penjumlahan desimal. Seperti bilangan desimal, bilangan biner juga dijumlahkan dengan cara yang sama. Pertama-tama yang harus dicermati adalah aturan pasangan digit biner berikut:
0 + 0 = 0
0 + 1 = 1
1 + 1 = 0 dan menyimpan 1
Sebagai catatan, bahwa jumlah dua yang terakhir adalah:
1 + 1 + 1 = 1 dengan menyimpan 1.
j. Pengurangan Biner
Bentuk Umum pengurangan :
0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 = 1 dengan meminjam 1 dari digit di sebelah kirinya!
k. Representasi Bilangan Positif dan Negatif pada Bilangan Biner
1) Label tanda konvensional : + dan -
Contoh : +4 dan -4
2) Menggunakan posisi digit sebelah kiri (MSB) sebagai sign digit (0 untuk positif dan 1 untuk negatif).
Contoh : Sign-Magnitude +9 dalam 8 bit = 00001001
Sign-Magnitude -4 dalam 4 bit = 1100
Magnitude dari bilangan positif dan negatif sama hanya berbeda pada sign digitnya/MSB.
Terdapat dua sistem bilangan biner, yaitu bilangan biner tak bertanda dan bilangan biner bertanda. Pada sistem bilangan biner tak bertanda, hanya dikenal bilangan biner posisif dan tidak diijinkan adanya bilangan biner negatif.
Di sini semua bit digunakan untuk merepresentasikan suatu nilai. Terdapat dua cara untuk mengubah suatu bilangan positif ke bilangan negatif, yaitu menggunakan sistem bilangan biner komplemen satu dan sistem bilangan biner komplemen dua. Cara pertama, merupakan cara yang paling mudah ditempuh. Dengan cara ini, untuk mengubah bilangan positif ke negatif cukup dilakukan dengan mengubah bit 0 ke 1 dan bit 1 ke 0 pada setiap bit suatu bilangan biner. Sebagai contoh, 101101 merupakan bilangan biner dengan nilai 45. Maka -45 sama dengan 010010.
1 0 1 1 0 1 bilangan biner asli
0 1 0 0 1 0 bilangan biner komplemen satu
l. Sistem Oktal dan Heksa Desimal
Bilangan oktal adalah bilangan dasar 8, sedangkan bilangan heksadesimal atau sering disingkat menjadi heks. ini adalah bilangan berbasis 16. Karena oktal dan heks ini merupakan pangkat dari dua, maka mereka memiliki hubungan yang sangat erat. oktal dan heksadesimal berkaitan dengan prinsip biner!
Ubahlah bilangan biner 101101011011001011 menjadi bilangan heks !
0010 | 1101 | 0110 | 1100 | 1011 -> | Biner |
---|---|---|---|---|---|
2 | D | 6 | C | B -> | Heks |
Digit Oktal | Ekivalens 3-Bit |
---|---|
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
Digit Desimal | Ekivalens 4-Bit |
---|---|
0 | 0000 |
1 | 0001 |
2 | 0010 |
3 | 0011 |
4 | 0100 |
5 | 0101 |
6 | 0110 |
7 | 0111 |
8 | 1000 |
9 | 1001 |
A (10) | 1010 |
B (11) | 1011 |
C (12) | 1100 |
D (13) | 1101 |
E (14) | 1110 |
F (15) | 1111 |