Lompat ke konten Lompat ke sidebar Lompat ke footer

Widget HTML #1

Dasar Logika Pemrogaman Komputer Pemula

Dasar Logika Pemrogaman Komputer Pemula

Alfazzablog - Setiap orang yang bekerja biasanya membutuhkan alat bantu untuk menyelesaikan pekerjaannya supaya menjadi lebih mudah.

Seorang tukang kayu misalnya membutuhkan palu, gergaji dan pengukur. Ahli mesin membutuhkan kunci pas dan obeng. Seorang teknisi elektronika membutuhkan multimeter, oscilloscope dan solder untuk menyelesaikan pekerjaannya.

Seorang programmer harus menguasai bahasa yang dimiliki oleh komputer seperti bahasa C++, Java atau bahasa pemrograman lainnya. 

Bahasa tersebut merupakan cara komputer supaya bisa memahami apa yang diperintahkan karena komputer tidak paham bahasa Indonesia atau bahasa manusia manusia, sehingga programmer lah yang harus menyesuaikan dengan komputer. 

Bahasa komputer mempunyai aturan-aturan yang harus diikuti. Dalam menulis program komputer yang meliputi seni dan ilmu pengetahuan tersebut seperti halnya dalam merancang sebuah mobil, dimana mobil tersebut harus mempunyai tingkat fungsional yang tinggi, efficient, bertenaga maksimal, mudah digunakan, dan amat menyenangkan jika dilihat. 

Daftar Isi

  1. Perangkat Keras Komputer
  2. Arsitektur Komputer
  3. Central Processing Unit (CPU)
  4. Memori
  5. Kerja Komputer
  6. Sistem Bilangan
  7. Pemrogaman Komputer
  8. Bahasa Pemrogaman
  9. Bahasa C++

1.1. Perangkat Keras Komputer

Source Image : pixabay

Komputer merupakan sebuah mesin yang bekerja untuk memproses, menyimpan, serta mendapatkan data. Data-data tersebut berupa angka, karakter, titik warna, gelombang bunyi atau suatu kondisi sebuah sistem, seperti pendingin atau CD player. Semua data disimpan dalam bentuk angkaangka.

Angka tersebut dalam bentuk bilangan biner yang diwakili oleh angka 1 dan 0 yang sering disebut bit. Supaya mudah dalam mengingatnya, maka komputer mengelompokan data biner tersebut menjadi nible, byte dan word. 

Dengan mengelompokan tersebut, selain mudah diingat, juga akan memudahkan pengguna dalam menuliskan sebuah program berupa kode yang dimengerti oleh mesin, merancang sebuah struktur data dan algoritma yang komplek.

Bagian-bagian komputer 

Bagian-bagian komputer

Komputer terdiri dari beberapa komponen, yang secara garis besar dibagi menjadi dua yaitu: berupa perangkat keras dan perangkat lunak. Komponen utama pada perangkat keras, terletak pada pusat komputer adalah prosesor, prosesor ini berfungsi mengeksekusi program komputer.

Selain prosesor, komputer juga mempunyai memori. Dalam sebuah komputer biasanya terdapat beberapa memori yang berbedabeda. 

Memori ini digunakan untuk menyimpan program ketika prosesor sedang bekerja. Komputer juga mempunyai piranti untuk menyimpanan dan mempertukarkan data dengan dunia luar atau yang sering disebut I/O.

Piranti I/O akan mempertukarkan data, seperti: masukan teks melalui keyboard serta mendisplaykannya pada layar monitor. 

I/O juga digunakan untuk memindahkan data maupun program ke atau dari suatu disk drive, modem, printer, mouse dan lain-lain.


Perangkat lunak mengendalikan fungsi dan operasi sebuah komputer . Ada beberapa Lapisan Layer perangkat lunak yang digunakan dalam komputer . Secara umum lapisan akan saling berhubungan dengan layer diatas atau dibawahnya.

gambar lapisan perangkat lunak

Pada perangkat lunak tingkatan yang paling rendah , Perangkat lunak dijalankan oleh processor ketika komputer pertama kali dihidupkan . 

Perangkat lunak ini melakukan inisialisasi perangkat keras sistem tersebut untuk mengetahui kondisi dan mengatur komputer pada sistem operasi yang benar. 

Perangkat lunak ini bersifat permanen dan disimpan dalam memori komputer. Perangkat lunak inilah yang dikenal sebagai firmware. 

Firmware digunakan untuk meletakan program bootloader. Bootloader adalah sebuah program khusus dan dijalankan oleh prosesor ketika membaca sistem operasi dari disk atau memori nonvolatile yang kemudian menempatkannya di dalam memori. Bootloader biasanya dimiliki komputer desktop dan workstation.

Lapisan perangkat lunak diatas firmware, adalah sistem operasi. Perangkat lunak ini berfungsi mengendalikan operasi komputer, mengorganisir penggunaan memori dan mengendalikan peralatan seperti keyboard, mouse, monitor, disk drive, dan sebagainya. 

Sistem operasi juga memberikan fsilitas kepada user untuk melakukan antarmuka dengan piranti lain, menjalankan program aplikasi dan mengakses file memori luar seperti Compact Disk (CD).

Perangkat lunak pada lapisan paling tinggi adalah perangkat lunak aplikasi yang merupakan program yang langsung berhubungan dengan kemampuan sebuah komputer. Kemampuan sebuah komputer sangat tergantung pada aplikasi perangkat lunak sistem.

1.2. Arsitektur Komputer

Sebuah prosesor atau yang sering disebut dengan central Procesing Unit (CPU) pada sebuah komputer tidak bisa bekerja sendiri dalam melakukan kerja sebagai pemroses. 

CPU memerlukan komponen-komponen pendukung seperti memori untuk menyimpan data dan program, serta piranti I/O (Input/Output) yang digunakan untuk memindahkan data antara komputer dan dunia luar.

Selain itu juga komputer memerlukan clock (detak) sebagai penggerak prosesor dalam memproses data.
Mikroprosesor adalah suatu pengolah yang dibentuk oleh sebuah chip tunggal atau sering disebut integrated circuit. 

Mikroprosesor ini sering ditemukan pada sebuah superkomputer, komputer PC, atau sekarang ini hampir semua pengolah data modern adalah mikroprosesor.

Mikroprosesor yang paling banyak digunakan saat ini adalah: seri Intel Pentium, Freescale/IBM PowerPC, MIPS, ARM, and the Sun SPARC, dan lain-lain.

Blok diagram sebuah sistem komputer dapat ditunjukkan pada Gambar dibawah.


1.3.  Central Processing Unit (CPU)

Central Processing Unit (CPU)

CPU atau yang sering disebut prosesor merupakan bagian terpenting pada sebuah komputer. Dalam sistem komputer, prosesor menjadi bagian yang menjalankan komputasi dari komputer tersebut. 

Prosesor adalah suatu piranti elektronik yang mampu melakukan manipulasi data dengan cara yang disesuaikan oleh suatu urutan instruksi. 

Instruksi tersebut berfungsi sebagai opcode atau kode mesin. Urutan instruksi ini dapat diubah dan disesuaikan dengan aplikasi, hal ini dikarenakan sifat komputer yang programmable. Urutan instruks adalah sesuatu yang mendasari sebuah program.

Instruksi pada sebuah komputer adalah berupa angka-angka. Angka yang berbeda, ketika dibaca dan yang dieksekusi oleh suatu prosesor, akan menyebabkan sesuatu hal yang berbeda pula. 

Instruksi pada sebuah mesin menyesuaikan dengan machine code yang sesuai, ini artinya bahwa setiap prosesor mempunyai instruksi masing-masing sesuai industri yang memproduksinya. Suatu instruksi yang berbeda mempunyai arti bahwa mesin yang diprogram juga berbeda.

1.4.  Memori

Memori digunakan untuk menyimpan perangkat lunak yang berupa data maupun obcode sebuah prosesor. 

Memori dapat dikategorikan menjadi memori yang dapat menyimpan data secara permanen walaupun listrik yang mengalir pada memori tersebut diputus dan memori ini sering disebut Nonvolatail memory (tidak mudah berubah isinya), dan memori yang bersifat sementara atau data yang disimpan dalam memori tersebut akan hilang jika listrik yang mengalir diputus, dan jenis memori ini sering disebut dengan Volatail memory.

Kedua jenis memori tersebut mempunyai kelebihan serta kelemahan masing-masing, sehingga penggunaannyapun disesuaikan dengan kebutuhan masing-masing.

Memori diimplementasikan dalam bentuk chip yang didalamnya berisi ribuan komponen elektronika. Memori ini dapat digambarkan dalam blok diagram seperti gambar dibawah:


Gambar tersebut diatas adalah memori yang terdiri dari bus alamat yang dikodekan dengan A0 – A9. Bus alamat ini bersifat satu arah yaitu sebagai masukan sja. Selain bus alamat terdapat juga bus data sebanyak 8 bit yang bersifat dua arah sebagai masukan maupun keluaran.

Bus yang dimiliki memori selain bus alamat dan data adalah bus kendali. Bus alamat digunakan untuk memilih data yang disimpan pada lokasi memori, dimana banyaknya lokasi pada tiap blok memori adalah 2n,, jika n = 10 maka jumlah lokasi memori yang mungkin adalah 210 = 1024 bit.

Setiap bit data tersimpan dalam memori dalam bentuk biner 0 atau 1. Jika banyaknya lokasi dikalikan dengan jumlah banyaknya bit dalam tiap lokasi, untuk 10 alamat bit maka akan memperoleh kapasistas memori 1024x8 bit.

1.5.  Kerja Komputer


Komputer yang merupakan mesin penghitung sekarang ini mesin tersebut banyak dipakai untuk pemroses data. 

Fungsinya sangat sederhana yaitu digunakan untuk memproses data, kemudian hasil prosesnya diselesaikan secara elektronis didalam Central Processing Unit (CPU) dan komponen lainnya yang menyusun sebuah komputer personal.

Suatu sinyal yang dikirimkan dari suatu pemancar (transmitter) ke penerima (receiver) untuk berkomunikasi adalah berupa data.

Data-data yang biasa dijumpai sehari-hari memiliki banyak bentuk, antara lain: suara, huruf, angka, dan karakter lain (tulisan tangan atau dicetak), foto, gambar, film dan lain sebagainya. 

Suatu sistem yang dapat memproses nilai yang kontinyu berbanding terhadap waktu dinamakan sistem analog. Pada sistem analog, nilainya biasa diwakili oleh tegangan, arus dan kecepatan. Berikut ini adalah gambar grafik nilai tegangan analog terhadap waktu.

1.6.  Sistem Bilangan 

Sistem bilangan yang paling umum digunakan adalah sistem bilangan desimal, biner, oktal, dan heksadesimal. 

Sistem bilangan desimal merupakan sistem bilangan yang paling banyak digunakan oleh manusia karena berbagai kemudahannya untuk dipergunakan sehari-hari. 

Sistem bilangan biner merupakan sistem bilangan yang paling banyak digunakan dalam sistem digital karena sistem bilangan ini secara langsung dapat mewakili logika yang ada, sedangkan sistem bilangan oktal dan heksadesimal biasanya banyak digunakan dalam sistem digital untuk memperpendek penyajian suatu bilangan yang tadinya disajikan dalam sistem bilangan biner, sehingga lebih mudah dipahami atau dihafalkan.

Secara umum bilangan dapat dibagi menjadi beberapa kategori. Ditinjau dari segi koma desimal (point), bilangan dapat dibagi menjadi bilangan bulat (integer number/fixedpoint number) dan bilangan pecahan (floating-point number). 

Dilihat dari dari segi tanda, bilangan dapat dibagi menjadi bilangan tak bertanda (unsigned number) dan bilangan bertanda (signed number).

Bilangan Desimal

Sistem bilangan desimal disusun oleh 10 angka atau lambang. Dengan menggunakan lambang-lambang tersebut sebagai digit pada sebuah bilangan, maka akan dapat mengekspresikan suatu kuantitas. Kesepuluh lambang tersebut adalah:
D = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }

Sistem bilangan desimal disebut juga sistem bilangan basis 10 atau radiks 10 karena mempunyai 10 digit. Sistem bilangan ini bersifat alamiah karena pada kenyataannya manusia mempunyai 10 jari. Kata digit itu sendiri diturunkan dari kata bahasa Latin finger .


Ciri bilangan yang menggunakan sistem bilangan desimal adalah adanya tambahan subskrip des atau 10 atau tambahan D di akhir suatu bilangan.
357des = 35710= 357D.

 Bilangan Biner

Sistem 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 keadaan dalam sistem digital maupun sistem komputer.

Digit bilangan biner disebut binary digit atau bit. Empat bit dinamakan nibble dan delapan bit dinamakan byte. 

Sejumlah bit yang dapat diproses komputer untuk mewakili suatu karakter (dapat berupa huruf, angka atau lambang khusus) dinamakan word. 

Sebuah komputer dapat memproses data satu word yang terdiri dari 4 sampai 64 bit. Sebagai contoh, sebuah komputer yang menggunakan mikroprosesor 32 bit dapat menerima, memproses, menyimpan dan mengirim data atau instruksi dalam format 32 bit.

Pada komputer yang digunakan untuk memproses karakter, maka karakter (yang meliputi huruf, angka, tanda baca dan karakter kontrol) tersebut harus diformat dalam bentuk kode alfanumerik. 

Format kode ASCII (American Standard Code for Information Interchange) menggunakan format data tujuh bit untuk mewakili semua karakter yang ada termasuk tanda baca dan penanda kontrol. 

Dengan menggunakan format tujuh 7 bit tersebut, maka ASCII dapat menanpung 27 = 128 data. Sistem bilangan biner merupakan sistem bilangan basis dua. Pada sistem bilangan ini hanya dikenal dua lambang, yaitu:

B = { 0, 1 }

Ciri suatu bilangan yang menggunakan sistem bilangan biner adalah adanya tambahan subskrip bin atau 2 atau tambahan huruf B di akhir suatu bilangan.

 1010011bin = 10100112 = 1010011B.

Bit paling kiri dari suatu bilangan biner bertindak sebagai bit paling berarti (Most Significant Bit, MSB), sedangkan bit paling kanan bertindak sebagai bit paling tidak berarti (Least Significant Bit, LSB). 

Bilangan Oktal

Sistem bilangan oktal merupakan sistem bilangan basis delapan. Pada sistem bilangan ini terdapat delapan lambang, yaitu:
O = { 0, 1, 2, 3, 4, 5, 6, 7 }

Ciri suatu bilangan menggunakan sistem bilangan oktal adalah adanya tambahan subskrip okt atau 8 atau tambahan huruf O di akhir suatu bilangan.

1161okt = 11618= 1161O

Bilangan Hexadecimal

Sistem bilangan heksadesimal merupakan sistem bilangan basis enambelas. Meskipun operasi pada sistem digital dan komputer secara fisik dikerjakan secara biner, namun untuk merepresentasikan data menggunakan format bilangan heksadesimal karena format ini lebih praktis, mudah dibaca dan mempunyai kemungkinan timbul kesalahan lebih kecil.

Penerapan format bilangan heksadesimal banyak digunakan pada penyajian lokasi memori, penyajian isi memori, kode instruksi dan kode yang merepresentasikan alfanumerik dan karakter nonnumerik. Pada sistem bilangan ini terdapat enam belas lambang, yaitu:
H = { 0,1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }

Ciri suatu bilangan menggunakan sistem bilangan heksadesimal adalah adanya tambahan subskrip heks atau 16 atau tambahan huruf H di akhir suatu bilangan.

271heks  = 27116  = 271H.

Bilangan ASCII

ASCII (Sistem American Standard Code for Information Interchange) dan EBCDIC merupakan awal dari set karakter lainnya. ASCII merupakan set karakter yang paling umum digunakan hingga sekarang. 

Set karakter ASCII terdiri dari 128 – (27 ) buah karakter yang masing-masing memiliki lebar 7-bit atau gabungan tujuh angka 0 dan 1, dari 0000000 sampai dengan 1111111. Mengapa 7-bit? 

Karena komputer pada awalnya memiliki ukuran memori yang sangat terbatas, dan 128 karakter dianggap memadai untuk menampung semua huruf Latin dengan tanda bacanya, dan beberapa karakter kontrol. 

ASCII telah dibakukan oleh ANSI (American National Standards Institute) menjadi standar ANSI X3.4- 1986.

1.6.  Pemrogaman Komputer


Komputer sebuah mesin yang dirancang untuk mengikuti instruksi. Program komputer merupakan sebuah instruksi yang digunakan oleh komputer untuk memecahkan masalah atau tugas-tugas yang diberikan padanya. 

Misalnya jika menggunakan komputer untuk menghitung pembayaran pada seorang pegawai maka langkahlangkah yang dilakukan adalah sebagai berikut:
  1. Menampilkan pesan pada layar “ berapa jam kamu bekerja?” 
  2. Menunggu pengguna memasukan data jam bekerja dan setelah ditekan ENTER maka komputer akan memasukan data ke dalam memory. 
  3. Menampilkan pesan pada layar “ berapa besarnya gaji tiap jamnya?” 
  4. Menunggu pengguna memasukan data per jam bekerja dan setelah ditekan ENTER maka komputer akan memasukan data ke dalam memory
  5. Komputer melakukan perkalian antara jumlah jam dengan gaji perjam 
  6. Komputer menampilkan hasil perhitungan gaji pegawai yang harus dibawa pulang. 
Sekumpulan instruksi-instruksi tersebut diatas disebut dengan algoritma. Algoritma merupakan kumpulan instruksi yang terdefinisi langkah demi langkah secara baik dengan tujuan untuk menyelesaikan masalah. 

Catatan langkah-langkah ini diurutkan secara sekensial. Dalam algoritma langkah pertama harus dilakukan lebih dahulu sebelum langkah kedua dan seterusnya. 

Langkah-langkah komputer tidak bisa terbalik. Pada langkah-langkah diatas, komputer diinstruksikan untuk menghitung besarnya gaji pegawai, untuk dapat bekerja maka langkahlangkah tersebut harus dikonversi bahasa yang bisa diproses oleh komputer.

Karena kenyataannya prosesor hanya dapat memproses instruksi yang ditulis dalam bahasa mesin. Prosesor hanya mengetahui penggunaan bilangan sebagai perintah yang harus dilakukan, oleh karena itu algoritma tersebut harus dikodekan menjadi bahasa mesin.

Pemrograman dengan menggunakan C++ misalnya akan menjadi lebih mudah dan C++ inilah yang akan mengkonversi bahasa program yang ditulis menjadi bahasa mesin. 

Dibawah ini merupakan program sederhana yang ditulis dengan bahasa C++.
#include <conion.h>
#include <iostream>
using namespace std;
int main() 
{     
    double jam, besar, bayar;     
    cout << "Berapa Jam Kamu bekerja? ";     
    cin >> jam;     
    cout << "Berapa besar gaji tiap jamnya? ";     
    cin >> besar;     
    bayar  = jam * besar;     
    cout << "Kamu mendapatkan Gaji (Rp)" << bayar << endl;     
    getch();     
    return 0; 
}

Keluaran program diatas adalah: 

Berapa Jam Kamu bekerja? 10

Berapa besar gaji tiap jamnya? 15000[enter]

Kamu mendapatkan Gaji (Rp)150000

1.7.  Bahasa Pemrogaman 

Bahasa pemrograman adalah notasi yang digunakan untuk menulis program (komputer). Bahasa ini dibagi menjadi tiga tingkatan yaitu bahasa mesin, bahasa tingkat rendah dan bahasa tingkat tinggi.

Secara garis besar ada dua kategori bahasa pemrograman yaitu: bahasa pemrograman aras rendah (low level) dan bahasa pemrograman level tinggi (high level). 

Bahasa pemrograman aras rendah cenderung mendekati level komputer, ini artinya bahwa bahasanya ditulis mendekati atau sama dengan bahasa mesin komputer, hal ini sangat sulit ditulis karena bahasanya jauh dari bahasa manusia yang digunakan sehari-hari.

Bahasa pemrograman yang lebih mudah dipelajari adalah bahasa pemrograman aras tinggi. Disebut aras tinggi karena bahasanya mendekati level bahasa manusia sehingga lebih mudah dipahami. Gambar dibawah ini merupakan gambaran antara bahasa aras tinggi dengan aras rendah.



Dengan gambar tersebut diatas, maka dapat dilihat bahwa menulis program dengan bahasa aras tinggi akan lebih mudah dan dapat dipahami dibandingkan dengan bahasa aras rendah.

Karena bahasanya ditulis dengan kode numerik ataupun dengan sintak yang sangat pendek sehingga sulit sekali dipahami. Untuk lebih jelasnya beberapa jenis bahasa pemrograman aras tinggi yang digunakan dapat dilihat pada tabel dibawah ini


1.8.  Bahasa C++


Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institute). 

Pertama kali, prototype C++ muncul sebagai C yang dipercanggih dengan fasilitas kelas. Bahasa tersebut disebut C dengan kelas ( C wih class). 

Selama tahun 1983-1984, C dengan kelas disempurnakan dengan menambah fasilitas pembeban lebihan operator dan fungsi yang kemudian melahirkan apa yang disebut C++.

Symbol ++ merupakan operator C untuk operasi penaikan, muncul untuk menunjukkan bahwa bahasa baru ini merupakan versi yang lebih canggih dari C.

Borland International merilis compiler Borland C++ dan Turbo C++. Kedua compiler tersebut samasama dapat digunakan untuk mlakukan kompilasi kode C++.

Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan DOS, juga dapat digunakan untuk pemrograman Windows. Selain Borland International, beberapa perusahaan lain juga merilis compiler C++, seperti Topspeed C++ dan Zortech C++. Perhatikan dan bandingkan program dibawah ini:

Contoh bahasa C
#include <stdio.h>
int main()
{
    double jam, besar, bayar;
    printf ( "Berapa Jam Kamu bekerja? ");
    scanf ( jam);
    printf ( "Berapa besar gaji tiap jamnya? ");
    scantf( besar);
    bayar  = jam * besar;
    printf ("Kamu mendapatkan Gaji (Rp)", bayar << endl;
    return 0;
}

Contoh Bahasa C++

#include <iostream>
int main()
{
    double jam, besar, bayar;
    printf ( "Berapa Jam Kamu bekerja? ");
    scanf ( jam);
    printf ( "Berapa besar gaji tiap jamnya? ");
    scantf( besar);
    bayar  = jam * besar;
    printf ("Kamu mendapatkan Gaji (Rp)", bayar << endl;
    return 0;
}

Posting Komentar untuk "Dasar Logika Pemrogaman Komputer Pemula"