Dasar-Dasar Komputer
Pengertian
Dasar Komputer
Konsep awal terciptanya komputer adalah sebagai alat
hitung. Istilah komputer diambil dari bahasa latin computare yang artinya menghitung,
jika dalam bahasa inggris to compute, yang artinya juga sama yaitu menghitung.
Secara umum komputer dapat diartikan sebagai alat
elektronika yang bekerja secara koordinasi dan integrasi berdasarkan program,
dapat menerima masukan berupa data yang diproses didalam suatu sistem dan
dikeluarkan dalam bentuk informasi.
Untuk lebih memahami konsep komputer anda bisa
perhatikan struktur organisasi komputer disamping dan berikut penjelasannya :
1. Input Device (Alat Masukan)
Adalah perangkat keras komputer yang berfungsi
sebagai alat untuk memasukan data atau perintah ke dalam komputer
2. Output Device (Alat Keluaran)
Adalah perangkat keras komputer yang berfungsi untuk
menampilkan keluaran sebagai hasil pengolahan data. Keluaran dapat berupa
hard-copy (ke kertas), soft-copy (ke monitor), ataupun berupa suara.
3. I/O Ports
Bagian ini digunakan untuk menerima ataupun mengirim
data ke luar sistem. Peralatan input dan output di atas terhubung melalui port
ini.
4. CPU (Central Processing Unit)
CPU merupakan otak sistem komputer, dan memiliki dua
bagian fungsi operasional, yaitu: ALU (Arithmetical Logical Unit) sebagai pusat
pengolah data, dan CU (Control Unit) sebagai pengontrol kerja komputer.
5. Memori
Memori terbagi menjadi dua bagian yaitu memori
internal dan memori eksternal. Memori internal berupa RAM (Random Access
Memory) yang berfungsi untuk menyimpan program yang kita olah untuk sementara
waktu, dan ROM (Read Only Memory) yaitu memori yang haya bisa dibaca dan
berguna sebagai penyedia informasi pada saat komputer pertama kali dinyalakan.
6. Data Bus
Adalah jalur-jalur perpindahan data antar modul dalam
sistem komputer. Karena pada suatu saat tertentu masing-masing saluran hanya
dapat membawa 1 bit data, maka jumlah saluran menentukan jumlah bit yang dapat
ditransfer pada suatu saat. Lebar data bus ini menentukan kinerja sistem secara
keseluruhan. Sifatnya bidirectional, artinya CPU dapat membaca dan menirma data
melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 jalur
paralel.
7. Address Bus
Digunakan untuk menandakan lokasi sumber ataupun
tujuan pada proses transfer data. Pada jalur ini, CPU akan mengirimkan alamat
memori yang akan ditulis atau dibaca. Address bus biasanya terdiri atas 16, 20,
24, atau 32 jalur paralel.
8. Control Bus
Control Bus digunakan untuk mengontrol penggunaan
serta akses ke Data Bus dan Address Bus. Terdiri atas 4 samapai 10 jalur
paralel.
Pada kesempatan kali ini, saya akan menulis artikel
tentang Pemrograman dasar menggunaan bahasa Java, Bahasa pemrograman java
sendiri mendefinisikan delapan buah tipe data sederhana, yaitu : byte, short,
int, long, char, float, double & boolean, Tipe-tipe tersebut kemudian
dikelompokan menjadi beberpa bagian, yaitu : Integer (Bilangan bulat), tipe
Floating-Point (Bilangan riil), tipe karakter, dan tipe boolean (logika).
Integer, kelompok ini terdiri dari tipe byte, short,
int dan long yang digunakan untuk mempresentasikan data-data yang bertipe
bilangan bulat, misalnya : -5,4,100, dsb
Floating Point , Kelompok ini terdiri dari tipe float
dan double yang digunakan untuk mempresentasikan data-data yang bertipe
bilangan riil (mengandung pecahan) ,misalnya 1,2 ,
55,2 dsb
Karakter, Kelompok ini terdiri dari sebuah tipe data,
yaitu char, yang merepresentasikan data dalam bentuk karakter alfanumerik dan
simbol. misalnya : ‘a’,'A’,’2′,’%’ dsb
Boolean, kelompok ini juga terdiri dari sebuah tipe
data, yaitu boolean, yang digunakan untuk merepresentasikan nilai logika (benar
/ salah).
di atas tadi merupakan penjelasan dari macam-macam
tipe data yang biasa digunakan dalam pemrograman yang menggunakan bahasa Java.
bagaimana contoh pemrograman dasarnya, silahkan disimak contoh di bawah ini :
1. Tipe Int
class ContohPerhitungan {
public static void main(String[] args) {
byte a = 1;
short b = 2;
int c = 3, d;
d = a + b + c;
System.out.println(“Hasil = ” + d);
}
}
Hasilnya :
Hasil = 6
2. Tipe Double
class KelilingLingkaran {
public static void main(String[] args) {
double pi = 3.1416;
double r = 2.12;
double keliling;
keliling = 2 * pi * r;
System.out.println(“Keliling lingkaran = ” +
keliling);
}
}
Hasilnya :
Keliling lingkaran = 13.320384
3. Tipe Char
class DemoKarakter2 {
public static void main(String[] args) {
char ch = ‘A’;
System.out.println(“ch = ” + ch);
ch++; //sama
dengan ch = ch + 1;
System.out.println(“ch = ” + ch);
}
}
Hasilnya :
ch = A
ch = B
4. Tipe Boolean
class DemoBoolean1 {
public static void main(String[] args) {
boolean b;
b = true;
System.out.println(“Nilai b = ” + b);
if (b) {
System.out.println(“Statemen ke-1 dieksekusi”);
}
b = false;
System.out.println(“Nilai b = ” + b);
if (b) {
System.out.println(“Statemen ke-2 tidak akan
dieksekusi”);
}
if (!b) {
System.out.println(“Statemen ke-3 dieksekusi”);
}
System.out.println(“5 <= 10 mengembalikan nilai ”
+
(5 <= 10));
System.out.println(“4 > 6 mengembalikan nilai ” +
(4 > 6));
}
}
Hasilnya :
Nilai b = true
Statemen ke-1 dieksekusi
Nilai b =
false
Statemen ke-3 dieksekusi
5<=10 mengembalikan nilai true
4>6 mengembalikan nilai false
a. Latar Belakang
Tujuan dari belajar Algoritma dan Pemrograman adalah
agar dapat membiasakan diri melakukan suatu perencanaan apabila menyelesaikan
suatu masalah, karena suatu permasalahan yang diselesaikan dengan suatu
perencanaan yang matang maka akan mendapatkan solusi yang lebih optimal
dibandingkan menyelesaikan masalah tanpa menggunakan suatu perencanaan. Oleh
karena itu, penyusun mencoba untuk memaparkan masalah tentang konsep dasar
pemrograman.
b. Rumusan Masalah
Apa pengertian program, pemrograman, dan algoritma ?
Bagaimana ciri-ciri algoritma pemrograman yang baik ?
Bagimana tahapan membangun program itu ?
Bagaimana kualitas bahasa pemrograman ?
c. Maksud dan Tujuan
Maksud dari penyusunan tugas ini adalah untuk
memenuhi dan melengkapi salah satu tugas mata kuliah Algoritma dan Pemrograman
1C di Universitas Gunadarma. Sedangkan tujuan dari penulisan tugas ini adalah:
Mengembangkan kreativitas dan wawasan penulis.
Memberikan uraian konsep dasar pemrograman secara
lebih terperinci.
d. Metode Pengumpulan Data
Untuk memperoleh data yang diperlukan dalam
penyusunan tugas ini, penyusun menggunakan Metode Browsing Internet, yaitu
metode yang dilakukan dengan browsing atau membaca atau mencari
referensi-referensi yang berkaitan dengan masalah yang dibahas dalam tugas ini
di internet.
a. Program dan Pemrograman
Program adalah kata, ekspresi, pernyataan atau
kombinasi yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa
urutan langkah untuk menyelesaikan masalah dan diimplementasikan dengan
menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer.
Pemrograman adalah proses mengimplementasikan urutan
langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa
pemograman. Sedangkan pemrograman terstruktur adalah metode untuk
mengorganisasikan dan membuat kode-kode program supaya mudah untuk dimengerti,
mudah di test dan di modifikasi.
Algoritma berasal dari kata algoris dan ritmis yang
pertama kali ditemukan oleh Abu Jafar Mohhamed Ibn Musa al Khowaritzmi (825 M)
dari buku Al Jabr Wa al Muqabla. Dalam bidang pemrograman algoritma
didefinisikan sebagai suatu metode khusus yang tepat dan terdiri dari
serangkaian langkah yang terstruktur dan dituliskan secara sistematis yang akan
dikerjakan untuk menyelesaikan masalah dengan bantuan komputer.
Hubungan antara algoritma, masalah dan solusi dapat
digambarkan sebagai berikut :
Proses dari masalah hingga terbentuk suatu algoritma
disebut tahap pemecahan masalah, sedangkan tahap dari algoritma hingga
terbentuk suatu solusi disebut dengan tahap implementasi. Solusi yang dimaksud
adalah suatu program yang merupakan impelementasi dari algoritma yang disusun.
Contoh Algoritma
ketika ingin mengirimkan surat kepada teman, yakni :
Tulis surat pada secarik kertas surat
Ambil sampul surat
Masukkan surat ke dalam sampul
Tutup sampul surat menggunakan perekat
Tempel perangko pada surat
Bawa surat ke kantor pos untuk di poskan
b. Algoritma Pemrograman yang Baik
Ciri-ciri algoritma pemrograman yang baik adalah :
Semua operasi yang dibutuhkan terdefinisi dengan
jelas
Menghasilkan output yang tepat dan benar dalam waktu
yang singkat
Memiliki logika perhitungan atau metode yang tepat
dalam memecahkan masalah
Ditulis dengan format yang mudah dipahami dan
diimplementasikan ke dalam bahasa pemrograman
Ditulis dengan bahasa yang standar secara sistematis
dan rapi sehingga tidak menimbulkan arti ganda
c. Membangun Program
Bila masalah yang dihadapi oleh seorang pemrogram
sangat besar dan kompleks, maka ia pasti membutuhkan tahapan-tahapan dalam
membangun programnya, agar dapat diperoleh suatu program yang baik. Sebenarnya
tahapan-tahapan tersebut hanya membantu pemrogram agar dapat menyelesaikan
pekerjaannya secara sistematis.
Tahapan-tahapan untuk membangun suatu program yang
besar dan kompleks adalah sebagai berikut :
Definisi masalah
Analisis kebutuhan
Teknik pemecahan masalah dan algoritma
Pengkodean
Testing dan Debuging
Pemeliharaan
Dokumentasi
Untuk memecahkan suatu masalah yang sederhana
pemrogram tidak perlu melalui tujuh tahap tersebut, tetapi cukup
mengidentifikasi masalah, menentukan input, proses dan output yang diinginkan,
menentukan algoritma, mengimplementasikannya dengan sautu bahasa pemrograman
tertentu dan melakukan testing.
d. Kualitas Bahasa Pemrograman
Ekspresivitas =
Bahasa pemrograman yang baik adalah mampu
menggambarkan algoritma yang dibuat oleh programmer.
Dapat didefinisikan dengan baik =
Sintaks dan semantik bahasa pemrograman yang baik
haruslah konsisten dan tidak bermakna ganda.
Tipe data dan strukturnya =
Bahasa programmer yang baik haruslah berkemampuan
untuk mendukung berbagai tipe data(integer, real, pointer,dsb) dan terstruktur
dalam array, record ataupun object.
Modularitas =
Bahasa pemrograman yang baik harus mempunyai
fasilitas subprogramming sehingga suatu program yang besar dapat dikerjakan
oleh sekaligus beberapa pemrogram secara bersama-sama yang nantinya dengan
mudah dapat digabungkan menjadi sebuah modul saja.
Fasilitas masukan keluaran =
Bahasa pemrograman yang baik haruslah dapat mendukung
berbagai jenis model file seperti sequential, random access, index, multiple
index dan lain sebagainya dalam pemrosesan masukan dan keluaran.
Portabilitas =
Bahasa pemrograman yang baik haruslah dapat dipakai
pada berbagai tipe mesin komputer yang berbeda, jadi bersifat machine
independent.
Efisiensi =
Bahasa pemrograman yang baik haruslah efisien.
Mudah
dipelajari =
Bahasa pemrograman tersebut harus mudah dipelajari
maupun diajarkan.
Bersifat umum =
Bahasa pemrograman tersebut harus memiliki jangkauan
luas pada berbagai aplikasi pemrograman sehingga dapat disebut bahasa yang serbaguna.
a. Kesimpulan
Proses dari masalah hingga terbentuk suatu algoritma
disebut tahap pemecahan masalah, sedangkan tahap dari algoritma hingga
terbentuk suatu solusi disebut dengan tahap implementasi. Solusi yang dimaksud
adalah suatu program merupakan proses impelementasi dari algoritma yang
disusun.
b. Saran
Dalam menciptakan program yang baik, harus memenuhi
kriteria sebagai berikut:
Bahasa pemrograman yang baik haruslah dapat mendukung
berbagai jenis model file seperti sequential, random access, index, multiple index
dan lain sebagainya.
Bahasa pemrograman yang baik haruslah efisien.
Bahasa programmer yang baik haruslah berkemampuan
untuk mendukung berbagai tipe data(integer, real, pointer,dsb) dan terstruktur
dalam array, record ataupun object.
Dalam menyusun program sebaiknya pemrogram membuat
persiapan dan rancangan arsitektur program dengan matang, sehingga tidak
menimbulkan masalah pada tahap coding dan testing.
Sintaks dan semantik bahasa pemrograman yang baik
haruslah konsisten dan tidak bermakna ganda.
Bahasa pemrograman tersebut harus mudah dipelajari
maupun diajarkan.
Mudah dikembangkan di masa mendatang.
Bahasa pemrograman tersebut harus memiliki jangkauan
luas pada berbagai aplikasi pemrograman sehingga dapat disebut bahasa yang
serbaguna.
Bahasa pemrograman yang baik haruslah dapat dipakai
pada berbagai tipe mesin komputer yang berbeda, jadi bersifat machine
independent.