dasar dasar Komputer
Komputer telah digunakan untuk aplikasi bisnis sejak sekitar pertengahan
tahun 1950-an, sejak saat itu perangkat keras (hardware) dan perangkat
lunak (software) mendapatkan kemajuan yang fantastis. Pesatnya perkembangan
dibidang teknologi informasi dan komunikasi (Information and Commu-
nication of Technology/ ICT), telah meminimalisasi pemakaian pena dan
kertas. ICT lebih menjadikan istilah virtual semakin akrab dengan kegiatan
perkantoran modern. Kegiatan tulis menulis atau catat mencatat dan
membuat laporan, sekarang ini telah berbasiskan ICT. ICT telah mengambil
alih fungsi-fungsi dari alat tulis kantor yang lama. Data dan informasi
sekarang ini telah disimpan dan ditempatkan pada ICT, tidak lagi diatas
kertas atau ditumpukan kertas, dilaci-laci meja dan dilemari-lemari kantor.
Media tulis menulis dan penyimpanan data semakin beragam, format
data, cara-cara penyimpanan data serta pengelolaan data telah mengalami
banyak perubahan.
Komputer diawali sebagai mesin yang ukurannya sama besar dengan
sebuah ruangan yang melakukan tugas-tugas sederhana seperti aritmatika
dengan sangat cepat. Sebagian besar sirkuitnya terdiri atas tabung hampa
udara seukuran bola lampu kecil. Transistor dan chip diatas wafer silikon
menggantikan komponen elektronik tabung hampa dengan konsekuensi
penurunan biaya manufaktur yang memicu pada meningkatnya
permintaan akan komputer. Kecepatan pengolahan komputer terus mengalami
peningkatan seiring dengan menyusutnya ukuran fisik dari komponen-
komponen ini . Kecepatan elektron yang bergerak melalui sirkuit
yaitu konstan, menyusutnya ukuran sirkuit komputer menjadi setengah
ukuran semula bahkan berpuluh-puluh juta lebih kecil akan melipatgandakan
kecepatan pengolahan data dan menurunkan biaya pembuatannya (miniaturisasi).
Komputer yang kita kenal sekarang seperti komputer pribadi (Per-
sonal Computer/PC) berawal dari mesin yang disebut Electronic Numerical
Integrator and Calculator (ENIAC), yang dikembangkan pada tahun 1946
oleh Jhon W. Mauchly dan J. Presper Eckert, dua orang insinyur di Uni-
versity of Pennsylvania. ENIAC yaitu pendahulu dari UNIVAC I Remington
Rand, yang merupakan komputer otomatis universal yang pertama kali
dipasarkan secara luas, yang dipasang di Biro Sensus AS (U.S. Census
Bureau) pada tahun 1951 dan kemudian di General Electric (GE) pada
tahun 1954. International Business Machines (IBM) dengan cepat merespon
perkembangan komputer dengan mengeluarkan lini produk yang lengkap
dengan menciptakan System/360 pada tahun 1960-an yang dikenal dengan
istilah multiuser yang mendukung banyak pengguna pada waktu bersamaan.
Masa depan “komputer” dan “teknologi informasi komunikasi” menunjukkan
adanya kelangsungan tren kearah penyusutan ukuran fisik suatu komponen
dan atau sirkuit elektronika dan juga peningkatan mobilitas. Perusahaan-
perusahaan pembuat komputer, secara hardware dan software sedang
membuat dan mempertimbangkan, merancang atau mengembangkan
alat-alat seperti keyboard yang berbentuk proyeksi cahaya (virtual) pada
suatu permukaan datar dan sebuah pena digital yang mampu mengingat
tiap-tiap kata dan kalimat yang pernah dituliskan. Bergerak (mobile), nirkabel,
kecil, dan tidak mahal yaitu kata-kata yang menggambarkan teknologi
komputer dan atau teknologi informasi komunikasi, saat ini dan masa
akan datang, dimana saja dan kapan saja kita dapat menikmati suguhan
data dan informasi secara multimedia.
B. Pengertian Komputer
Cara pandang dan definisi dari kata “komputer” juga mengalami
perkembangan, sesuai dengan lingkungan, budaya, disiplin suatu ilmu
dan latar belakang keilmuan seseorang, seperti ilmu komputer. Dari
sisi bahasa menurut Barnhart Concise Dictionary of Etymology, kata ini
digunakan dalam bahasa Inggris pada tahun 1646 sebagai kata bagi
“orang yang menghitung” dan lalu menjelang 1897 juga untuk “alat
hitung mekanis”. Selama Perang Dunia II kata ini menunjuk kepada
para pekerja wanita AS dan Inggris yang pekerjaannya memperhitungkan
jalan artileri perang besar dengan mesin seperti itu.
Orang Perancis atau bahasa Perancis memakai kata “ordinateur”,
yang berarti kira- kira “organisator”, atau “memisahkan mesin”. Bahasa
Spanyol memakai kata “ordenador”, dengan arti sama, walaupun
dibeberapa negara mereka memakai “anglicism computa dora”.
Dalam Bahasa Italia, komputer ialah “calcolatore”, dari “kalkulator”.
Bahasa Swedia, komputer dipanggil “dator” dari “data”. Dalam bahasa
Tionghoa, komputer dipanggil “dien nau” atau suatu “otak listrik”. Oxford
English Dictionary (OED 2), edisi ke2, mendefinisikan komputer yaitu
suatu perangkat yang digunakan untuk perhitungan atau mengendalikan
operasi-operasi yang dinyatakan dalam bentuk numerik atau logika.
V.C. Hamacher dalam bukunya “Computer Organiza-
tion” , komputer yaitu mesin penghitung elektronik yang cepat dan
dapat menerima informasi input digital, kemudian memprosesnya sesuai
dengan program yang tersimpan di memorinya, dan menghasilkan output
berupa informasi. Robert H. Blissmer (1985), dalam bukunya
“Computer Annual”, komputer yaitu suatu alat elektonik yang mampu
melakukan beberapa tugas sebagai berikut: menerima input, memproses
input tadi sesuai dengan programnya, menyimpan perintah-perintah
dan hasil dari pengolahan dan menyediakan output dalam bentuk informasi.
William M. Fuori dalam bukunya “Introduction To The
Computer, The Tool Of Business”, komputer yaitu suatu pemroses
data yang dapat melakukan perhitungan besar secara cepat, termasuk
perhitungan aritmetika dan operasi logika, tanpa campur tangan dari
manusia. Sanders (1985), komputer yaitu sistem elektronik untuk
memanipulasi data yang cepat dan tepat serta dirancang dan diorganisasikan
agar secara otomatis menerima dan menyimpan data input, memprosesnya,
dan menghasilkan output berdasar instruksi-instruksi yang telah
tersimpan dalam memori.
Komputer yaitu serangkaian mesin elektronik yang terdiri dari
jutaan komponen yang dapat saling bekerja sama, serta membentuk
sebuah sistem kerja yang rapi dan teliti. Sistem ini kemudian digunakan
untuk dapat melaksanakan pekerjaan secara otomatis, berdasar
instruksi (program) yang diberikan kepadanya. Istilah Hardware komputer
atau perangkat keras komputer, merupakan benda yang secara fisik
dapat dipegang, dipindahkan dan dilihat. Software komputer atau perangkat
lunak komputer merupakan kumpulan instruksi (program/prosedur)
untuk dapat melaksanakan pekerjaan secara otomatis dengan cara
mengolah atau memproses kumpulan instruksi (data) yang diberikan.
Filosofisnya bahwa komputer merupakan benda mati (alat) yang
dapat digunakan manusia untuk membantu manusia juga dalam hal
meringankan atau menyelesaikan pekerjaan-pekerjaannya. sebab manusia
yaitu makhluk hidup sedangkan hardware dan software yaitu benda
mati, maka tujuan membuat atau menciptakan (create) hardware dan
software ini yaitu untuk kepentingan manusia, dalam hal ini istilah
manusia yaitu sebagai Brainware komputer.
Gambar 1. Pengenalan Komputer
C. Sejarah komputer
1. Generasi Pertama
Tabung hampa udara (vacum-tube) merupakan ciri dari komputer
generasi pertama dengan salah satu bahan bakunya terbuat dari kaca,
sehingga mudah pecah dan mudah menyerap atau menyalurkan panas.
Agar bahan dari kaca tadi tidak cepat panas, maka diperlukan komponen
lain yang berfungsi sebagai pendingin. Dengan adanya komponen tambahan
ini maka komputer menjadi besar, berat dan mahal. Sekitar tahun
1946, komputer elektronik di dunia yang pertama yakni ENIAC selesai
dibuat. Pada komputer ini terdapat ± 18.800 tabung hampa udara
dan berbobot ± 30 ton dengan panjang ± 30 meter dan tinggi ± 2,4
meter sehingga memerlukan ruangan yang luas dan lebar.
2. Generasi Kedua
Penemuan bahan baku lain berupa transistor yang terdiri dari basic,
collector dan emmiter, merupakan ciri dari komputer generasi kedua
ini. Transistor merupakan singkatan dari Transfer Resistor, sebagai komponen
padat yang mempunyai banyak keunggulan seperti tidak mudah pecah,
tidak cepat menyerap dan menyalurkan panas, maka dengan begitu komputer
yang ada menjadi lebih kecil, lebih murah dan lebih sedikit membutuhkan
listrik. Beberapa contoh komputer generasi kedua yaitu : IBM Serie 1400,
NCR Serie 304, MARK IV (diproduksi di Jepang tahun 1957), Honeywell
Model 800 dan IBM 7090 (buatan Amerika).
3. Generasi Ketiga
Komputer generasi ketiga merupakan lanjutan riset dari generasi
kedua dengan hasil riset bahwa transistor-transistor dapat dipadatkan
(Integrated Circuit/IC). IC yaitu gabungan dari ribuan transistor dalam
bentuk silikium dengan bentuk kecil dan ukuran beberapa milimeter. Contoh
komputer generasi ini yaitu : Apple Computer, TRS Model 180 dan
IBM S/360.
4. Generasi Keempat
Riset kemudian dilanjutkan lagi, pada generasi ini ditandai dengan
munculnya LSI (Large Scale Integration) yang merupakan pemadatan
ribuan IC kedalam sebuah Chip. Istilah chip digunakan untuk menunjukkan
suatu lempengan persegi empat yang memuat rangkaian-rangkaian terpadu
(integrated circuits). LSI kemudian dikembangkan dalam VLSI (Very Large
Scale Integration). Perkembangan berikutnya ditandai dengan munculnya
mikroprocessor dan semi konduktor. Perusahaan pembuat mikroprocessor
antara lain : Intel Corporation, Motorola, Zilog dll. Intel Corp. mengeluarkan
mikroprocessor dengan model 4004, 8088, 80286, 80386, 80486, 80586
atau dikenal dengan nama pentium. Sedangkan pabrik Motorola mengeluarkan
model 6502, 6800.
D. Komputer berdasar Jenis
Sejarah perkembangan komputer dari generasi ke generasi memperlihatkan
bagaimana perbedaan secara fisiknya. Bentuk Komputer berdasar
jenisnya dibedakan berdasar golongan, kapasitas penyimpanan datanya
dan data yang diolahnya.
1. berdasar Golongan
General Purpose Computer yaitu komputer yang biasa atau yang
umum digunakan untuk mengerjakan pekerjaan sehari-hari (rutinitas)
seperti pekerjaan kantoran yang bervariasi.
Special Purpose Computer yaitu komputer yang digunakan untuk
menyelesaikan pekerjaan ataupun aplikasi khusus. Special-purpose
pada awalnya merupakan general-purpose yang digunakan secara
khusus dan disesuaikan dengan konfigurasi ataupun peralatan
didalamnya yanng sudah dimodifikasi.
2. berdasar Kapasitas
Komputer Mikro (Personal Computer) diciptakan untuk memenuhi
kebutuhan perorangan (personal). Memori yang dimiliki oleh sebuah
personal komputer pada awalnya hanya berkisar antara 32 hingga
64 KB (Kilo Byte). Tetapi dalam perkembangannya memori sebuah
personal komputer sampai diatas 128 MB (Mega Byte). Contoh
dari komputer mikro ini seperti workstation desktop atau tower,
laptop, notebook dll.
Gambar 2. Personal Komputer
Komputer mini mempunyai kemampuan beberapa kali lebih besar
jika dibanding dengan personal komputer. Hal ini disebabkan
sebab mikroprocessor yang digunakan untuk memproses data
memang mempunyai kemampuan jauh lebih unggul jika dibandingkan
dengan mikroprocessor yang digunakan pada personal komputer.
Ukuran fisiknya dapat sebesar lemari kecil. Komputer mini pada
umumnya dapat digunakan untuk melayani lebih dari satu pemakai
(multiuser). Dalam sistem multiuser ini, pada akhirnya personal
komputer banyak digunakan sebagai terminal yang berfungsi
untuk memasukkan data. Contoh komputer mini : IBM AS-400.
Gambar 3. Mini Komputer
Komputer mainframe yaitu yang memiliki processor lebih dari
satu. Dengan demikian, dari segi kecepatan proses mainframe jauh
lebih cepat jika dibanding dengan mini komputer. Kecepatan kerja
mainframe mencapai 1 milyar operasi perdetik (1 giga operations
per-seconds = 1 GOPS). Kecepatan ini sangatlah diperlukan, sebab
mainframe biasanya digunakan untuk memproses data yang mempunyai
kapasitas sangat besar dan disamping itu mainframe biasanya juga
digunakan oleh puluhan hingga ratusan pemakai yang bekerja
secara bersama-sama. Contoh komputer mainframe yaitu z900.
Komputer Super, sesuai dengan namanya memiliki kemampuan,
yaitu kecepatan proses yang tinggi serta memiliki kemampuan
menyimpan data yang jauh lebih besar apabila dibandingkan dengan
mainframe. Harga super komputer sangatlah besar dan mahal.
Salah satu contoh super komputer yaitu Cray-2. Pengguna super
komputer biasanya negara-negara yang sudah maju ataupun
perusahaan-perusahaan yang sangat besar, seperti misalnya industri
pesawat terbang Nurtanio. Kemampuan lain yang dimiliki oleh
super komputer yaitu mampu membaca/menyadap pelbagai
data dari satelit.
3. berdasar Data yang Diolah
Data yang diolah oleh komputer jenisnya sangatlah banyak. Ada data
berupa gambar, suara, huruf, angka, keadaan, simbol ataupun yang
lainnya lagi. Dalam hal ini, tidak setiap komputer bisa mengolah seluruh
data yang ada. Ada komputer yang hanya bisa mengolah suara, ataupun
hanya mengolah huruf dan angka saja. Walaupun demikian, ada pula
komputer yang bisa mengolah beberapa data secara bersama-sama.
Digital Computer, merupakan suatu komputer yang dapat digunakan
untuk mengolah data yang bersifat kuantitatif (sangat banyak jumlahnya).
Datanya berupa simbol yang memiliki arti tertentu, misalnya : simbol
alphabetis yang digambarkan dengan huruf A s/d Z ataupun a s/d
z, simbol numerik yang digambarkan dengan angka 0 s/d 9 ataupun
simbol-simbol khusus, seperti halnya : ? / + * & !.
Analog Computer, merupakan suatu komputer yang dapat digunakan
untuk mengolah data yang bersifat kualitatif. Data yang ada bukan
merupakan simbol, tetapi masih merupakan suatu kejadian. Seperti
misalnya keadaan suhu ataupun kelembaban udara, ketinggian ataupun
kecepatan yaitu merupakan suatu keadaan yang oleh komputer
kemudian ditetapkan sehingga menjadi suatu ukuran.
Hybrid Computer, merupakan komputer yang bisa digunakan untuk
mengolah data yang bersifat kuantitatif ataupun kualitatif. Hibrid
komputer juga bisa dikatakan sebagai gabungan dari analog dan
digital komputer. Komputer ini banyak digunakan oleh pelbagai rumah
sakit yang digunakan untuk memeriksa keadaan tubuh dari pasien,
yang pada akhirnya, komputer bisa mengeluarkan pelbagai analisa
atau hasil diagnosa yang disajikan dalam bentuk gambar, grafik ataupun
tulisan.
Gambar 8. Komputer Hybrid
E. Konsep Dasar Sistem Komputer
Prinsipnya sistem komputer selalu memiliki perangkat keras masukan
(input/input device system) – perangkat keras pemprosesan (processing/
central processing unit) – perangkat keras keluaran (output/output device
system), perangkat tambahan yang sifatnya opsional (peripheral) dan tempat
penyimpanan data (Storage device system/external memory).
1. Sistem Perangkat Keras Masukan (Input Device System)
Sebagai peralatan yang difungsikan untuk memasukkan data ke
dalam komputer. Jenis input device yang dimiliki oleh komputer cukup
banyak diantaranya :
Keyboard
Mouse
Touchscreen
Scanner
Scanner Barcode
Gambar 11. Mesin scan barcode
Sensor sidik jari/Finger Print
Camera
Microphone
Dll
2. Sistem Pemrosesan (Central Processing System/ Central
Processing Unit (CPU)
Sebagai tempat untuk pengolahan data atau juga dapat dikatakan
sebagai otak dari segala aktivitas pengolahan seperti penghitungan, pengurutan,
pencarian, penulisan, pembacaan dan sebagainya. Pada CPU terdapat beberapa
komponen perangkat seperti :
o Processor
o RAM (Random Access Memory)
o ROM (Read Only Memory)
o Papan Induk/Mother Board
Gambar 14. Papan Induk/Mother Board
o Cache Memory
Gambar 15. Berbagai macam kepingan memori
3. Sistem Perangkat Keras Keluaran (Output Device System)
Sebagai perangkat yang difungsikan untuk mengeluarkan hasil
pemrosesan CPU seperti tulisan (huruf, angka, karakter khusus, simbol
lain), grafik, gambar/image, suara dan bentuk khusus yang dapat dibaca
oleh mesin. Jenis output device yang dimiliki oleh komputer cukup banyak
diantaranya :
o Monitor/Screen/Display
o Speaker
o Printer
o Plotter
o Mesin Fax
o dll.
4. Sistem perangkat keras tambahan (Peripheral/Accessories
Device System)
Difungsikan sebagai penambahan kemampuan dari sistem komputer
seperti dapat berbagi file dan data antara komputer. Perangkat peripheral
seperti:
Modem
Network Card/Ethernet
Gambar 16. LAN card
TV Card
Kartu Grafis/VGA Card
24 DASAR-DASAR KOMPUTER
Gambar 17. Kartu Grafis/VGA Card
Kartu Suara/Sound Card
dll.
Sistem perangkat keras cadangan (secondary storage/backing storage/
external memory) diperuntukkan sebagai tempat penyimpanan data,
file dan program yang berada diluar sistem utama. Contoh perangkat
keras cadangan ini yaitu sebagai berikut:
Disket, Hard Disk
Flash Disk, Magnetic Tape
Keping CD/DVD (CD/DVD Room)
Dll.
SISTEM OPERASI
A. Definisi Sistem Operasi
Sistem operasi sebagai resource manager yaitu pengelola seluruh
sumber daya yang terdapat pada sistem komputer dan sebagai extended
machine yaitu menyediakan sekumpulan layanan ke pemakai sehingga
memudahkan dan menyamankan penggunaan serta pemanfaatan sumber
daya sistem komputer. Prinsip dasarnya bahwa sistem operasi merupakan
program komputer yang berisi perintah-perintah (command) yang bertugas
menjembatani interaksi antara manusia dengan komputer, sehingga
komputer dapat bekerja sesuai keinginan.
Berikut yaitu beberapa definisi dari sistem operasi yang diperoleh
dari berbagai sumber :
Sistem operasi yaitu software yang mengontrol hardware.
Program yang menjadikan hardware lebih mudah untuk digunakan.
Kumpulan program yang mengatur kerja hardware sesuai keinginan
user.
Manager sumber daya atau pengalokasian sumber daya komputer,
seperti mengatur memori, printer, dll.
Sebagai program pengendali, yaitu program yang digunakan untuk
mengontrol program yang lain.
Sebagai kernel, yaitu program yang terus-menerus running selama
komputer dihidupkan.
Sebagai guard (penjaga) yang menjaga komputer dari berbagai kejahatan
komputer.
B. Sejarah Perkembangan Sistem Operasi
Sejarah perkembangan suatu sistem operasi tidak terlepas dari sejarah
perkembangan komputer secara umum. sebab komputer merupakan
suatu sistem, maka dapat dikatakan bahwa perkembangan sistem operasi
berbanding lurus dengan perkembangan komputer secara fisiknya (hardware).
Sejarah perkembangan dari sistem operasi yaitu sebagai berikut:
1. Generasi pertama (tahun 1945an – 1955an)
Komputer elektronik digital pertama tidak memiliki sistem operasi.
Sistem komputer diberi instruksi yang harus dikerjakan secara langsung
sehingga semua operasi dilakukan secara manual dan hanya bisa digunakan
untuk melakukan proses-proses penghitungan angka-angka (aritmatika),
seperti penambahan ( + ), pengurangan ( - ), perkalian ( * ) dan
pembagian ( / ).
2. Generasi kedua (tahun 1955 – 1965)
Sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi
dasar sistem operasi sudah ada, misal FMS (Fortran Monitoring System)
dan IBSYS. Sistem komputer masa ini yaitu batch processing system,
yaitu pekerjaan (job) dikumpulkan dalam satu rangkaian kemudian
dieksekusi secara berurutan. Tahun 1964, IBM mengeluarkan keluarga
komputer System/360 yang dirancang agar kompatibel dengan banyak
perangkat keras, memakai sistem operasi OS/360 dan berevolusi
menjadi System 370.
3. Generasi ketiga (tahun1965 – 1980)
Sistem komputer dikembangkan untuk melayani banyak pemakai
interaktif sekaligus dan online (secara langsung dihubungkan ke komputer).
Sistem komputer menjadi multiuser dan multiprogramming. Multi-
programming yaitu komputer melayani banyak program yang dijalankan
(proses/job) sekaligus pada satu waktu secara bersamaan. Cara yang
dilakukan yaitu dengan mempartisi memori menjadi beberapa bagian,
dengan satu bagian memori untuk satu job berbeda. Saat satu job
menunggu operasi masukan/keluaran selesai, job lain dapat memakai
pemroses. sebab komputer harus menanggapi permintaan-permintaan
pemakai secara cepat dan bila tidak akan menyebabkan produktivitas
pemakai menurun drastis, maka dikembangkan teknik time sharing,
sehingga pemakai-pemakai merasa dilayani terus-menerus, padahal
sebenarnya digilir per satuan waktu yang singkat. Agar tidak terjadi
bottleneck (kemacetan), dikembangkan teknik spooling, yaitu saat ada
permintaan layanan peripheral, langsung diterima dan data disimpan
lebih dulu di memori yang disediakan (berupa antrian), kemudian
dijadwalkan agar secara nyata dilayani oleh peripheral. Pada generasi
ini muncul sistem operasi UNIX.
4. Generasi keempat (tahun 1980 – 199x)
Ditandai dengan meningkatnya kemampuan komputer dekstop (PC)
dan teknologi jaringan TCP/IP. Pada generasi ini menuntut kenyamanan
dalam mengoperasikan sistem komputer, yaitu dengan adanya GUI
(graphical user interface = antarmuka komputer berbasiskan grafis
yang nyaman). GUI dimulai dengan X Windows, kemudian Macintosh,
Sun View dan MS Windows.
Pada 1990 dimulai era komputasi tersebar (distributed computing) dengan
teknologi distributed operating system yaitu sistem operasi yang diperuntukkan
jaringan komputer. Pemakai tak perlu menyadari keberadaan komputer-
komputer yang terhubung, dimana pengalokasian kerja sudah secara
otomatis dilaksanakan sistem operasi. Pemakai memandang jaringan
komputer sebagai 1 uni prossesor besar, walau sebenarnya terdiri dari
banyak prosessor (komputer) yang tersebar.
C. Komponen Dasar Sistem Operasi
Kebanyakan sistem operasi memiliki komponen-komponen mendasar
yang mendukung kerja dari pengoperasian suatu sistem komputer, yakni:
1. Manajemen proses
Proses yaitu sebuah program yang sedang dijalankan (eksekusi).
Suatu proses memerlukan sumberdaya pada saat eksekusi yaitu CPU time,
memori, berkas dan peranti I/O. Sistem operasi bertanggung jawab terhadap
aktifitas yang berhubungan dengan manajemen proses yaitu:
- Pembuatan dan penghapusan proses
- Penundaan dan pelanjutan proses
- Penyedia mekanisme untuk :
o Sinkronisasi antar proses
o Komunikasi antar proses
o Penanganan deadlock
2. Manajemen memori utama
o Memori sebagai tempat penyimpanan instruksi/data dari program.
o Penyimpanan yang cepat sehingga dapat mengimbangi kecepatan
eksekusi instruksi CPU.
o Terdiri dari “array words/bytes”yang besar.
o Alamat digunakan untuk mengakses data (shared oleh CPU dan
I/O devices)
o Umumnya main memory bersifat “volatile”–tidak permanen yaitu
isinya akan hilang jika komputer di matikan.
o Sistem operasi bertanggung jawab untuk aktivitas berikut yang
berhubungan dengan manajemen memori :
- Melacak pemakaian memori(siapa dan berapa besar?).
- Memilih program mana yang akan diload ke memori ketika
bisa digunakan.
- Alokasi dan dealokasi memori sesuai yang dibutuhkan.
3. Manajemen Berkas/File
o Berkas yaitu kumpulan informasi yang berhubungan (sesuai
dengan tujuan pembuat berkas ini ).
o Biasanya berkas merepresentasikan program dan data.
o Sistem operasi bertanggungjawab :
- pembuatan dan penghapusan berkas
- pembuatan dan penghapusan direktori
- mendukung manipulasi berkas dan direktori
- memetakan berkas pada sistem sekunder
- backup berkas pada media penyimpanan yang stabil (nonvolatile)
4. Manajemen Input/Output ( I/O )
Sistem I/O terdiri dari :
- Sistem buffer : menampung sementara data dari/ke peranti I/O
- Spooling : melakukan penjadwalan pemakaian I/O sistem supaya lebih
efisien (antrian).
- Antarmuka devices-driver yang umum yaitu menyediakan device driver
yang umum sehingga sistem operasi dapat seragam (buka, baca, tulis,
tutup).
- Drivers yaitu aplikasi yang khusus dirancang untuk spesifik suatu
perangkat keras.
- Menyediakan driver untuk melakukan operasi rinci/detail untuk perangkat
keras tertentu.
5. Manajemen Penyimpanan Sekunder
o Penyimpanan sekunder = penyimpanan permanen.
o sebab memori utama bersifat sementara dan kapasitasnya terlalu
kecil, mak untuk menyimpan semua data dan program secara permanen,
sistem komputer harus menyediakan penyimpanan sekunder untuk
dijadikan back-upmemori utama.
o Sistem operasi bertanggung jawab dalam aktivitas yang berhubungan
dengan manajemen penyimpanan sekunder, yaitu :
- manajemen ruang kosong
- alokasi penyimpanan
- penjadwalan disk
6. Jaringan (Sistem Terdistribusi)
Sistem terdistribusi yaitu kumpulan prosesor yang tidak berbagi
memori atau clock. Setiap prosesor memiliki memori lokal masing-masing.
Prosesor-prosesor dalam sistem terhubung dalam jaringan komunikasi.
Sistem terdistribusi menyediakan akses pengguna ke bermacam-macam
sumberdaya. Akses ini menyebabkan peningkatan kecepatan komputasi,
peningkatan penyediaan data dan peningkatan keandalan
7. Sistem Proteksi
Proteksi berkenaan dengan mekanisme untuk mengontrol akses
yang dilakukan oleh program, prosesor, pengguna sistem maupun pengguna
sumberdaya. Mekanisme proteksi harus mampu membedakan antara
penggunaan yang sah dan yang tidak sah, spesifikasi kontrol untuk diterima
dan menyediakan alat untuk pemberlakuan sistem
8. Command – Interpreter System
Sistem operasi menunggu instruksi dari pengguna (command driven).
Program yang membaca instruksi dan mengartikan control statements
(keinginan pengguna) umumnya disebut control-card interpreter, command-
line interpreter dan UNIX shell. Command-interpreter system sangat bervariasi
dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan
tujuan dan teknologi peranti I/O yang ada. Contohnya seperti sistem operasi
Windows, Pen-based (touch),dll.
D. Struktur Dasar Sistem Operasi
Sistem operasi modern merupakan suatu sistem yang besar dan kompleks.
Struktur sistem operasi merupakan komponen-komponen sistem operasi
yang dihubungkan dan dibentuk di dalam kernel. Struktur sistem operasi
yang pernah ada dan digunakan seperti sistem monolitik, sistem berlapis,
sistem dengan mesin maya, sistem dengan client – server dan sistem berorientasi
objek. Berikut akan dipaparkan struktur dasar dari sistem operasi ini :
Sistem monolitik
Sistem operasi sebagai kumpulan prosedur dimana prosedur dapat
saling dipanggil oleh prosedur lain di sistem bila diperlukan. Kernel
berisi semua layanan yang disediakan sistem operasi untuk pemakai.
Kelemahan dari sistem ini yaitu pengujian dan penghilangan kesalahan
sulit sebab tak dapat dipisahkan dan dilokalisasi, sulit dalam menyediakan
fasilitas pengamanan, merupakan pemborosan bila setiap komputer
harus menjalankan kernel monolitik sangat besar sementara sebenarnya
tidak memerlukan seluruh layanan yang disediakan kernel, tidak fleksibel
dan kesalahan pemrograman satu bagian dari kernel menyebabkan
matinya seluruh sistem. Keunggulan dari sistem ini yaitu layanan
dapat dilakukan sangat cepat sebab terdapat di satu ruang alamat.
UNIX sampai saat ini berstruktur monolitik. Meskipun monolitik, yaitu
seluruh komponen/subsistem sistem operasi terdapat di satu ruang
alamat tetapi secara rancangan yaitu berlapis. Untuk mempermudah
dalam pengembangan, pengujian & fleksibilitas UNIX memakai
konsep kernel loadable modules, yaitu :
a. bagian-bagian kernel terpenting berada di memori utama secara
tetap
b. bagian-bagian esensi lain berupa modul yang dapat ditambahkan
ke kernel saat diperlukan dan dicabut begitu tidak digunakan lagi
di waktu jalan (run-time).
Sistem berlapis
Sistem operasi dibentuk secara hirarki berdasar lapisan-lapisan, dimana
lapisan-lapisan bawah memberi layanan lapisan lebih atas. Jadi lapisan
n memberi layanan untuk lapisan n+1. Proses-proses di lapisan n
dapat meminta layanan lapisan n – 1 untuk membangun layanan
bagi lapisan n+1. Lapisan n dapat meminta layanan lapisan n – 1.
Kebalikan tidak dapat, lapisan n tidak dapat meminta layanan n +
1. Masing-masing berjalan di ruang alamatnya sendiri.
Keunggulannya yaitu memiliki semua keunggulan rancangan modular,
yaitu sistem dibagi menjadi beberapa modul dan tiap modul dirancang
secara independen. Tiap lapisan dapat dirancang, dikode, dan diuji
secara independen.
Kelemahannya yaitu fungsi – fungsi sistem operasi harus diberikan
ke tiap lapisan secara hati-hati.
Sistem dengan Mesin Maya
Sistem operasi dapat menjalankan aplikasi-aplikasi untuk sistem operasi
lain konsep operating system emulator. Contohnya seperti MS Win-
dows NT dapat menjalankan aplikasi untuk MS-DOS. Aplikasi ini
dijalankan sebagai masukan bagi subsistem di MS-Windows NT yang
mengemulsikan system calls yang dipanggil aplikasi dengan Win32API
(system calls di MS Windows NT). Pengembang Linux membuat DOSEMU
agar aplikasi untuk MS-DOS dapat dijalankan di Linux, WINE agar
aplikasi untuk MS-Windows dapat dijalankan di Linux, iBCS agar
aplikasi untuk Unix dapat dijalankan di Linux, dll.
Sistem dengan Client-Server
Sistem operasi merupakan kumpulan proses dengan proses-proses
dikategorikan sebagai server dan client. Server yaitu proses yang menye-
diakan layanan sedangkan client yaitu proses yang memerlukan/
meminta layanan. Proses client yang memerlukan layanan mengirim
pesan ke server dan menanti pesan jawaban. Proses server setelah
melakukan tugas yang diminta, mengirim pesan jawaban ke proses
client. Server hanya menanggapi permintaan client dan tidak memulai
percakapan dengan client. Keunggulan dari sistem client-server ini
yaitu pengembangan dapat dilakukan secara modular, kesalahan
(bugs) di satu sub sistem (diimplementasikan sebagai satu proses)
tidak merusak subsistem-subsistem lain sehingga tidak memicu
satu sistem mati secara keseluruhan dan mudah diadaptasi untuk
sistem tersebar. Kelemahannya yaitu layanan dilakukan lambat
sebab harus melalui pertukaran pesan dan pertukaran pesan dapat
menjadi bottleneck.
Sistem Berorientasi Objek
Pada sistem berorientasi objek, layanan diimplementasikan sebagai
kumpulan objek. Objek mengkapsulkan struktur data dan sekumpulan
operasi pada struktur data itu. Tiap objek diberi tipe yang menandai
properti objek seperti proses, direktori, berkas, dsb. Dengan memanggil
operasi yang didefinisikan di objek, data yang dikapsulkan dapat diakses
dan dimodifikasi. Model ini terstruktur dan memisahkan antara layanan
yang disediakan dan implementasinya. Contoh sistem operasi berorientasi
objek, antara lain : Eden, Choices, X-kernel, Medusa, Clouds, Amoeba,
Muse, dsb. Sistem operasi MS Windows NT telah mengadopsi beberapa
teknologi berorientasi objek tapi belum keseluruhan.
E. Microsoft Windows
Microsoft windows yaitu suatu sistem operasi yang paling populer
yang berjalan pada mesin mikro komputer seperti Personal Computer
(PC), laptop, netbook, netbook dan lain-lain. Diseluruh dunia, sistem
operasi windows ini banyak digunakan, khususnya juga di negara republik
Indonesia, sistem operasi ini sudah terkenal (familiar), mulai dari kalangan
individu sampai organisasi. Beberapa orang atau organisasi tidak terlalu
menyukai windows, tetapi semua orang mengakui luasnya penggunaan
sistem operasi ini dalam aplikasi bisnis. Hampir semua menejer
atau profesional pasti akan memakai sistem operasi windows ini
pada suatu saat dalam karirnya. Windows sudah ada sejak 1981 dan
telah mengalami banyak perubahan yang mencerminkan kenaikan kemampuan
komputer dan keberagaman perangkat keras yang dipasangkan ke sistem
komputer.
Sistem operasi windows ini diproduksi oleh Microsoft, perusahaannya
milik Mr. Bill Gates. Menurut beberapa organisasi yang melakukan survey
terhadap orang-orang yang memiliki harta kekayaan (aset) diseluruh
dunia, menempatkan Mr. Bill Gates ini termasuk kedalam 10 orang terkaya
didunia. Versi sistem operasi dari windows yang terbaru saat ini yang
beredar luas dipasaran yaitu Windows Seven, untuk beberapa mikro
komputer. Versi sistem operasi dari windows sebelumnya yaitu Win-
dows 98, Windows 2000, Windows NT, Windows XP dan Vista. Windows
XP terdiri atas edisi “Professional” dan “Home”. Fitur-fitur yang tersedia
yang dibutuhkan untuk edisi ini tidak banyak perbedaan.
1. Kelebihan Windows
- Pengguna bisa menjalankan lebih dari satu aplikasi pada saat
yang bersamaan.
- Pengguna bisa membuka lebih dari satu file dalam waktu yang
bersamaan.
- Pengguna bisa sharing dari data aplikasi yang lain dengan mudah.
- Terdapat banyak aplikasi yang kompatibel dengan windows.
- End user artinya orang yang awam tentang komputer bisa menjalan-
kannya.
- Banyak didukung oleh vendor hardware dan software.
- Digunakan oleh mayoritas pengguna komputer di dunia, khususnya
di Indonesia
2. Kekurangan Windows.
Sistem file yang agak kacau, misalnya saja apabila kita menginstal
suatu aplikasi, sistem file DLL akan diletakkan di C:\Windows\System\...
sementara aplikasi itu sendiri terletak ditempat lain. Ini akan menyusahkan
saat menguninstal aplikasi ini , dan sewaktu pengintegrasian
DLL (Dynamic Link Libraries).
Menyebabkan ketergantungan penggunaan produk Microsoft.
Space hardisk yang dibutuhkan besar.
Sistem security yang lemah dan mudah dijebol oleh para hackers.
Membutuhkan memori fisik besar.
Membutuhkan kecepatan prosesor yang tinggi.
Harga licensi yang mahal
Membutuhkan perawatan yang terus menerus dan prosedur yang
sesuai dengan panduan yang ada saat memakai nya.
Gambar 2.2. Tampilan kontrol panel dan properti dari sistem operasi windows
F. Sistem Operasi yang lain
Banyak sebenarnya sistem operasi yang dipakai di dunia ini selain
Microsoft windows, seperti misalnya Atlas, BeOS buatan Macintosh, PetrOS
buatan Trumpet Software International Pty Ltd, MacOS buatan Apple,
Solaris, namun kita akan mengenal sedikit Operating system pesaing terberat
Microsoft milik Mr.Bill Gates ini yaitu Linux yang akhir-akhir ini banyak
digunakan oleh perusahaan –perusahaan besar dunia sebagai server
bahkan salah satu webserver milik Microsoft sendiri memakai nya.
Kemunculan Linux diawali dengan keinginan dari seorang mahasiswa
di Helsinki - Linus Benedict Torvalds - untuk memiliki sistem operasi yang
sehandal UNIX tapi dengan biaya semurah PC. Di pertengahan tahun
1991, Linus mulai mengumpulkan informasi dan mencari solusi untuk
menghadirkan UNIX di PC, banyak orang dari pelbagai negara memakai
Internet untuk berkomunikasi dan membangun sistem operasi yang
akhirnya diberi nama Linux ( Linux = LINus UniX ). Linux dikembangkan
dengan memakai konsep open source. Ini berarti bahwa kode program
dari Linux terbuka untuk semua orang yang ingin mengembangkannya.
Konsep keterbukaan ini ternyata membuat Linux berkembang sangat
cepat. Sistem lisensi open source ini diberi nama General Public License
(GPL) oleh GNU, yaitu suatu badan yang memperjuangkan kebebasan
dalam penggunaan perangkat lunak.
Richard Stallman pendiri GNU (GNU is Not Unix) mewujudkan
perjuangannya ini dengan membuat beberapa program yang dilepas
secara bebas, baik dalam penggunaannya ataupun source code-nya.
Konsep pemikiran Richard Stallman tentang free software ini bisa kita
baca pada bukunya Free As In Freedom yang bisa didownload secara gratis
di Internet. Linus Torvalds memiliki Sistem Operasi yang sehandal UNIX
“bertemu” Richard M Stallman dengan konsep Open Source beserta program-
program open sourcenya( berlisensi General Public License/GPL ) lahirlah
GNU/Linux yang lebih populer disebut orang. Sekarang banyak nama-
nama sistem operasi yang berbasis Linux yang keturunan UNIX ini digunakan
orang, diantaranya ialah : Redhat, Fedora, Mandrake, Suse, Debian, Slakewake,
Gento, Kubuntu, Ubuntu, Mandrakesoft, Blankon , Mademandra, xnuxer buatan
dani firmansyah sang pembobol server KPU, Knopix, Flax dan masih
ratusan nama-nama distro lainnya.
1. Kelebihan Linux
- Lisensi yang gratis.
- Linux bisa berinteraksi dengan sistem operasi lain dengan cara
kompabilitas file sistem, kompabilitas network, dan emulasi (simulasi)
sistem operasi.
- Virtual memory membuat linux mempunyai kemampuan untuk
menjalankan program-program yang lebih dari seharusnya sebab
penggunaan swap memori.
- Skalabilitas artinya linux bisa berjalan dari komputer 286 XT sampai
dengan mesin sebesar Beowulf clusters dengan multi prosesor 16
buah.
- Stabilitas, Linux sangat luar biasa stabil, jika dikonfigurasi dengan
benar, sistem linux akan hidup terus menerus hingga hardwarenya
tidak memadai (rusak), lain dengan windows yang memerlukan
reboot berkala untuk menjaga stabilitas. Salah satu yang mendasari
stabilitas ini yaitu penomoran versi dari shared libraries, kebanyakan
aplikasi windows menginstal versi-versi baru dari dynamic link
libraries (DLL), yang memicu aplikasi lain yang menimpa
versi lain dari DLL ini tidak berfungsi dengan semestinya.
Linux juga mewarisi tradisi UNIX dengan mendukung adanya file
permission (izin file), yang dapat mencegah pengubahan atau
penghapusan file tanpa izin dari pemiliknya, sebab itu, virus pada
dasarnya tidak dikenal di dunia linux.
- Didukung oleh ribuan programmer di seluruh dunia, jadi kalau
ditemukan bug cepat untuk mendapatkan solusinya.
- Paket Linux merupakan satu kesatuan artinya, saat instalasi tergantung
keinginan pemakai dan sudah mulai banyak didukung oleh vendor
hardware maupun software dunia meskipun masih kalah bersaing
dengan windows.
2. Kekurangan Linux
Sistem operasi yang agak sulit untuk dipelajari terutama bagi yang
tidak mempunyai dasar komputer yang kuat.
Aplikasi yang tersedia belum sebanyak windows.
Sistem operasi yang tidak sepenuhnya GUI (Graphical User Interface)
meskipun sudah memakai X-windows seperti GNOME dan
KDE.
Nama-nama paket program antara distro satu dengan distro lainnya
berbeda beda. Seperti paket Yaz.tar.gz.rpm.krpm.deb dan lain-
lain.
Gambar 2.3. Tampilan sistem operasi linux kubuntu
Untuk berbagai macam ragam sistem operasi yang ada, metode yang
paling baik dalam memakai nya yaitu trial & error, yaitu coba dan
salah. Maksudnya bahwa untuk dapat mengoperasikan sistem operasi
yang belum pernah kita gunakan maka coba saja berbagai macam fitur
yang disediakan oleh sistem operasi ini dengan mengklik-klik tombol-
tombol yang tersedia dan memperhatikan hasilnya, tandai atau kenali
pesan-pesan kesalahan yang ditampilkan oleh sistem operasi ini .
Metode coba dan salah ini dianggap baik dalam interaksi manusia dan
sistem komputer.
G.Sistem Aplikasi (Application System)
Pernahkah Anda memakai suatu program untuk mengolah
kata (word) atau bekerja dengan memakai program-program seperti
Microsoft Office Word, Excel, Powerpoint dan Access ?. Kalau jawaban Anda
pernah, maka sebenarnya Anda telah memakai suatu sistem aplikasi
(application system). Perlu dicatat bahwa Microsoft Office bukanlah sistem
operasi, melainkan hanya suatu kelompok program aplikasi (perangkat/
piranti lunak). Sistem aplikasi akan dapat berguna jika dan hanya jika
sistem operasi telah terinstal sebelum terinstalnya sistem aplikasi.
Sistem aplikasi tidak bisa berdiri sendiri, maksudnya bahwa sistem
aplikasi bergantung terhadap sistem operasi. Sistem aplikasi yaitu
program (kumpulan instruksi) yang dibuat atau dirancang untuk tujuan
tertentu atau khusus, artinya bahwa sistem aplikasi dibuat sesuai dengan
domain permasalahan. Microsoft Office merupakan suatu program paket
aplikasi yang didalam paket aplikasi ini telah tersedia sistem aplikasi
yang khusus untuk tujuan tertentu seperti mengolah kata (word), mengelola
data dengan memakai format tabel yang terdiri atas baris dan kolom
yang berisi rumus-rumus matematika (access), menampilkan (powerpoint)
bagian-bagian atau lembar-lembar (slide) kerja yang dianggap penting
untuk ditampilkan secara lebih menarik didepan orang lain (audience)
dan membuat suatu sistem informasi dengan memakai konsep sistem
manajemen basisdata (access).
Selain program paket aplikasi Microsoft Office, masih banyak lagi
contoh-contoh sistem aplikasi yang lain seperti aplikasi untuk memutar
lagu (Winamp), aplikasi untuk memainkan video yang satu paket dari
sistem operasi windows dari microsoft (windows media player), aplikasi
portable data seperti adobe acrobat reader, aplikasi untuk melakukan browsing
di jaringan berbasis tampilan web seperti mozilla, opera dan lain-lain,
aplikasi untuk menterjemahkan suatu bahasa asing seperti rekso, translator,
aplikasi untuk bermain (game) seperti freecell, spider solitare, prince of persia,
poker, dan lain sebagainya. Berikut akan diberikan contoh dari sistem
aplikasi, yaitu sistem aplikasi untuk memainkan video yang satu paket bawaan
dari sistem operasi windows dari microsoft (windows media player).
Gambar 2.4. Tampilan sistem aplikasi memutar video (windows media player).
H.Definisi Bahasa Pemograman (Programming Language)
Bahasa pemograman yaitu suatu cara atau teknik berkomunikasi
atau interaksi antara manusia sebagai makhluk hidup dengan mesin yang
dalam hal ini yaitu komputer sebagai suatu perangkat peralatan. Bahasa
pemograman berisi kumpulan perintah atau instruksi yang diketikkan
oleh manusia memakai perantaraan suatu perangkat keras berupa
papan ketik (keyboard). Bahasa pemograman juga akan menentukan
bagaimana data akan disimpan, dikirim dan mendapatkan kembali data
ini serta apa yang akan dilakukan selanjutnya jika terdapat kondisi
yang beragam seperti misalnya dalam memberi instruksi prioritas
terhadap peralatan I/O (input/output), multimedia dan lain-lain.
Kumpulan instruksi ini harus dapat dimengerti oleh komputer,
sebab nya maka bahasa yang diketikkan ini mempunyai urutan
langkah-langkah yang jelas, logis, sistematis, aturan-aturan khusus (tertentu),
berstruktur tertentu dan mempunyai elemen-elemen tertentu (syntaksis).
Rancangan awal bahasa pemograman ini lahir dari bahasa alami (natural
language) yang biasa dipakai oleh manusia dalam berinteraksi dan berkomunikasi
dengan manusia lain. Bahasa pemograman menyediakan kebutuhan
seorang programmer untuk dapat secara spesifik menyatakan atau mem-
berikan instruksi apa yang akan dilakukan oleh komputer.
Komputer hanya memahami satu bahasa, yaitu bahasa mesin, bahasa
mesin terdiri dari nilai 0 dan 1 yang disebut dengan digital. Untuk menterjemahkan
bahasa pemograman yang dituliskan oleh manusia dibutuhkan suatu
teknik khusus yang disebut compiler dan interpreter. Compiler yaitu
unit khusus pada masing-masing bahasa pemograman yang menterjemahkan
atau mengkonversikan kode-kode program atau instruksi atau source
code yang dituliskan menjadi nilai 0 dan 1. Interpreter merupakan suatu
teknik dalam menganalisa dan mengeksekusi baris per baris suatu set
instruksi yang diberikan atau yang dituliskan oleh programmer dalam
suatu bahasa pemograman tertentu. Berikut ini akan diberikan perbedaan
antara compiler dengan interpreter.
Tabel 2.1 Perbedaan compiler dan interpreter
Bahasa tingkat tinggi yang mempunyai ciri-ciri mudah dimengerti
sebab kedekatannya terhadap bahasa sehari – hari. Sebuah pernyataan
program diterjemahkan kepada sebuah atau beberapa mesin dengan
memakai compiler. Sebagai contoh yaitu JAVA, C++, .NET.
Bahasa pemrograman generasi pertama. Bahasa jenis ini sangat
sulit dimengerti sebab instruksinya memakai bahasa mesin. Disebut
juga dengan bahasa assembly merupakan bahasa dengan pemetaan
satu-persatu terhadap instruksi komputer. Setiap intruksi assembly diterjemahkan
dengan memakai assembler. Bahasa pemograman tingkat menengah
telah mendekati bahasa sehari-hari, walaupun masih cukup sulit untuk
dimengerti sebab memakai singkatan-singkatan seperti STO yang
berarti simpan (STORE) dan MOV yang artinya pindah (MOVE). Yang
tergolong dalam bahasa ini yaitu Assembler, Fortran dan lain-lain.
I. Algoritma (Algorithm)
Sebutan algoritma atau kata algoritma berasal dari seorang ilmuwan
matematika yang bernama Abu Ja’far Mohammed ibn Musa al Khowarizmi
sekitar tahun 825 M.. Algoritma yang dibuat atau disusun harus jelas,
sistematis dan logis sehingga tujuan dari pembuatan algoritma dapat tercapai.
Compiler Interpreter
Mengkonversikan kode program
atau instruksi (source code) secara
keseluruhan
Mengkonversikan instruksi per instruksi
Jika ada instruksi yang salah maka
kode program harus diperbaiki dan
di kompilasi ulang
Ketika memberi instruksi terdapat
kesalahan, maka kesalahan dapat
langsung diperbaiki.
Menghasilkan suatu objek Tidak menghasilkan suatu objek
Menghasilkan ekstensi Executable
(.exe)
Tidak menghasilkan ekstensi Executable
(.exe)
Pengecekan source code lebih cepat Pengecekan source code lebih lambat
Setelah source code dikompilasi dan
menghasilkan ekstensi Executable
(.exe) maka keamanan source code
dapat terjamin.
Source code dapat terus menerus diper-
gunakan dan diperbaiki, terkadang
dianggap sebagai virus dan keamanan
source code tidak terjamin.
Algoritma berperan penting dalam pemograman komputer, pentingnya
suatu algoritma akan menghasilkan penyelesaian masalah yang lebih
efektif dan efisien.
Algoritma sangat membantu seorang programer komputer dalam
memahami konsep logika pemograman dan menghasilkan modul-modul
program. Guna memahami suatu algoritma, hal yang harus dimiliki
seseorang yaitu pengetahuan dasar matematika, sebab pada dasarnya
algoritma lahir dari konsep logika matematika. Disini yang perlu dilatih
yaitu kemampuan logika agar benar-benar bisa menyusun langkah-
langkah penyelesaian masalah dengan baik. Algoritma yaitu kumpulan
instruksi yang dibuat secara jelas untuk menunjukan urutan langkah-
langkah penyelesaian suatu masalah (problem solving). Pada umumnya
algoritma kurang lebih sama dengan suatu prosedur yang sering dilakukan
setiap hari, misalnya saja prosedur untuk menghidupkan kendaraan bermotor,
memasak nasi dan lain-lain.
French,C.S. (1984) menyatakan bahwa algoritma yaitu sejumlah
konsep yang mempunyai relevansi dengan masalah rancangan program
yaitu kemampuan komputer, kesulitan dan ketepatan. Penerapan dari
konsep ini biasanya digunakan dalam rancangan algoritma. Dalam
merancang sebuah algoritma, Fletcher (1991) memberi beberapa cara
atau metode yaitu kumpulan perintah, ekspresi, tabel instruksi, program
komputer, kode semu dan flow chart, sedangkan Knuth (1973) menyarankan
algoritma fundamental. Untuk keperluan matematika dan program komputer
metode yang sering digunakan yaitu, diagram alir (flow chart), kode semu
(pseudo code) dan algoritma fundamental.
Knuth (1973) menyatakan 5 komponen utama dalam algoritma yaitu
finiteness, definiteness, input, output dan effectiveness. Menurut banyak ahli
dari pemograman komputer bahwa dalam merancang sebuah algoritma
minimal terdapat 3 (tiga) komponen yang harus ada yaitu:
1. Komponen masukan (input)
Komponen ini biasanya terdiri dari pemilihan variable, jenis variable,
tipe variable, konstanta dan parameter (dalam fungsi).
2. Komponen keluaran (output)
Komponen ini merupakan tujuan dari perancangan algoritma dan
program.
Permasalahan yang diselesaikan dalam algoritma dan program harus
ditampilkan dalam komponen keluaran. Karakteristik keluaran yang
baik yaitu benar (menjawab) permasalahan dan tampilan yang ramah
(frendly).
3. Komponen proses (processing)
Komponen ini merupakan bagian utama dan terpenting dalam merancang
sebuah algoritma. Dalam bagian ini terdapat logika masalah, logika
algoritma (sintaksis dan semantik), rumusan, metode (rekursi, perbandingan,
penggabungan, pengurangan dan lain-lain).
Contoh bentuk pseudo code dan flowchart untuk menghitung luas
suatu lingkaran yaitu sebagai berikut:
Tabel 2.2. Contoh bentuk pseudo code dan flowchart
Bahasa pemograman dirangkai untuk menyelesaikan suatu permasalahan
tertentu misalnya saja masalah mencari luas suatu lingkaran. Untuk
Pseudo code Flowchart
Phi ← 3.14 (konstanta phi)
Inputan (“Ketikkan angka
tengahnya/diameternya”)
Radiusnya ← diameter / 2
Luas Lingkaran diketahui ← Phi *
radius * radius
Outputnya (Luas Lingkaran diketahui)
End
Mulai / Start
Phi = 3.14
Input
(diameter)
radius = diameter / 2
Luas = phi * radius * radius
Output
(Luas)
Akhir / Stop
mengetahui luas suatu lingkaran dibutuhkan ilmu matematika yang mem-
bahas mengenai rumusan (formula) yang dapat digunakan. Rumusan
ini dapat disusun dalam bentuk pseudo code atau flowchart berdasar
algoritma.
SISTEM BILANGAN DASAR
A. Sistem Bilangan Dasar
Komputer merupakan suatu perangkat elektronik, sudah tentu data
yang dapat diolahnya yaitu data yang direpresentasikan oleh sinyal
listrik. Sinyal yang digunakan dapat dianalogikan dengan saklar listrik,
yaitu tombol off (mati) atau on (hidup). Jika saklar pada kondisi off, maka
komputer membaca sebagai data 0, jika saklar dalam kondisi hidup, maka
komputer membaca sebagai angka 1. Personal Computer (PC) saat sekarang
ini mudah dijumpai dirumah-rumah dan dikantor-kantor. Biasanya PC
digunakan atau difungsikan untuk mengolah atau memproses data, data
yang diperoleh secara umum diperoleh dari rutinitas kegiatan sehari-hari
seperti pekerjaan dikantor dan untuk menyelesaikan tugas-tugas kuliah.
Arus listrik yang ada dirumah-rumah kita pada saat ini yang diperoleh
dari perusahaan listrik negara (PLN) bersifat AC dan harus diubah ke
bentuk DC sebab komponen-komponen elektronika pada PC menerima
arus listrik DC sehingga PC mempunyai tombol untuk menghidupkan
(saklar-saklar) yang biasanya dikenal dengan tombol power yang menyatu
dengan casing/power supply unit (PSU), dimana PSU ini mampu mengubah
arus listrik AC ke bentuk DC. Sistem bilangan dasar (radix) yang paling
banyak dan sering digunakan oleh sistem komputer dan yang akan dibahas
pada buku ini yaitu sistem bilangan biner, sistem bilangan desimal, sistem
bilangan oktal dan sistem bilangan heksa desimal. Tabel berikut ini akan
menunjukkan seluruh sistem bilangan dasar, seperti dibawah ini:
Tabel 3.1. Seluruh sistem bilangan dasar yang digunakan
oleh sistem komputer
B. Sistem Bilangan Dasar 2 (Biner)
Seperti yang telah dijelaskan sebelumnya bahwa sistem bilangan
dasar biner yaitu sistem yang hanya mengenal bentuk angka 0 dan 1.
Istilah bit (bits) yaitu singkatan dari binary digit yang muncul dari sistem
bilangan dasar berbasis dua sebab memang hanya mengenal 2 macam
bentuk angka. Kumpulan dari 4 buah bits di sebut 1 nibble dan kumpulan
dari 8 buah bits disebut 1 byte atau sama dengan 2 nibble. Berikut ini akan
diperlihatkan tabel untuk bilangan biner (bilangan berbasis dua)
Sistem Bilangan
Dasar
(Radix)
Jumlah dalam bentuk
Angka Desimal dan Huruf
Binary 2 01
Ternary 3 012
Quarternary 4 0123
Quinary 5 01234
Senary 6 012345
Septenary 7 0123456
Octenary (Oktal) 8 01234567
Nonary 9 012345678
Denary (Desimal) 10 0123456789
Undenary 11 0123456789A
Duodenary 12 0123456789AB
Tredenary 13 0123456789ABC
Quatuordenary 14 0123456789ABCD
Quidenary 15 0123456789ABCDE
Hexadenary (Heksadecimal) 16 0123456789ABCDEF
Tabel 3.2. Sistem bilangan dasar 2 (biner)
Pengolahan data yang paling sering digunakan yaitu pengolah kata
(word processing), misalkan kita melakukan suatu pengolahan kata, komputer
bekerja dengan keyboard. Ada ±101 tombol (tergantung model) yang
mewakili karakter alphabet A, B, C, dst. Selain itu juga akan ditemui
karakter angka 0 sampai dengan 9, dan karakter-karakter lain yang
diperlukan, antara lain : , . ~ ( ) : _ ? ! “ # * % &. Seluruh karakter
yang ada pada keyboard harus di digitalkan.
Karakter-karakter ini diwakili oleh angka-angka 0 dan 1. Bit yang
digunakan yaitu 8 bit biner. 8 bit biner dinamakan 1Byte (8 bit = 1
bytes = 2 nibble), sistem inilah yang digunakan. Jika memakai 8
bit biner, berapa kombinasi angka yang dapat diwakili?. Untuk sistem
bilangan biner, banyaknya kombinasi dihitung dengan 2n < m, n yaitu
jumlah bit dan m yaitu kombinasi yang dapat diwakili, misalkan pada
8 bit biner, dapat mewakili 28 = 256 kombinasi maksimal. Berikut ini akan
ditampilkan tabel konversi dari sistem bilangan dasar berbasis 10 kedalam
sistem bilangan dasar berbasis 2.
Tabel 3.3. Konversi desimal ke bentuk biner
Basis Eksponen Simbol Jumlah Simbol
20 = 1
21 = 2
22 = 4
23 = 8
24 = 16
25 = 32
Dst
0 dan 1 2
Sistem bilangan dasar 10
(Desimal)
Sistem bilangan dasar 2
(binary) dalam 1 Nibble
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
Kata “angka” memakai simbol 4 huruf, saat komputer mengolahnya,
4 huruf ini dikonversi kebentuk digit menjadi 4 byte, yang kemudian
diletakkan pada memori (RAM) dan jika ingin disimpan secara tetap
(permanent) dipindahkan kedalam harddisk. Jumlah RAM pada sistem
komputer PC dapat memberi dampak yang signifikan terhadap kecepatan
dan kemampuan pengolahan data. 1 keping RAM untuk PC saat ini sudah
mampu menampung 4 gigabyte. Standard yang digunakan sebagai digitalisasi
alphanumerik yaitu kode ASCII (American Standard Code for Information
Interchange). Tabel berikut ini akan memperlihatkan konversi dari bit, byte
sampai petabyte dan ukuran data untuk tiap unitnya.
Tabel 3.4. Konversi dari bits, bytes sampai petabytes
6 0110
7 0111
8 1000
9 1001
Dst dst
Unit Definisi Bytes Bits Contoh
Bit
( 20 )
Binary Digits
(0 Atau 1)
1 1 Buka/Tutup
(Hidup/Mati,On/Off))
Bytes
( 23 )
8 bits 1 8 1 karakter kode ASCII
Kilo
bytes
( 210 )
1.024 bytes 1000 8000 Ukuran email biasa = 2 KB
10 halaman dokumen = 10
KB
Mega
bytes
(220)
1.024 kilo bytes
1.048.576 bytes
1
juta
8
juta
Floppy disks = 1,44 MB
CDROM = 650 MB
Giga
bytes
(230)
1.024 mega bytes
1.073.741.824 bytes
1
milyar
8
milyar
Hard disk drive = 40 GB
Terra
bytes
(240)
1.024 giga bytes
1.099.511.627.776
bytes
1
trilyun
8
trilyun
Serat optik
Peta
bytes
( 250 )
1.024 tera bytes
1.125.899.906.842.624
bytes
1000
trilyun
8000
trilyun
Serat optik
Tabel ASCII dibagi menjadi 3 bagian:
a) Kode sistem tak tercetak (Non Printable System Codes) antara 0 – 31.
b) ASCII lebih rendah (Lower ASCII), antara 32 – 137. Diambil dari kode
sebelum ASCII digunakan, yaitu sistem American ADP, sistem yang
bekerja pada 7 bit biner.
c) ASCII lebih tinggi (Higher ASCII), antara 128 – 255. Bagian ini dapat
diprogram, sehingga dapat mengubahubah karakter.
Sandi 8421 BCD yaitu sandi yang mengkonversi bilangan desimal
langsung ke bilangan binernya, sehingga jumlah sandi BCD yaitu 10,
sesuai dengan jumlahsimbol pada desimal, seperti yang diperlihatkan
oleh tabel berikut :
Tabel 3.5. Sandi 8421 BCD
C. Sistem Bilangan Dasar Sepuluh (Desimal)
Sistem bilangan desimal yaitu sistem dengan bilangan dasar yang
sudah umum atau yang sedang dipakai sekarang ini yang dipergunakan
dalam keseharian seperti penjumlahan, pengurangan, perkalian dan
pembagian. Digit yang ada berjumlah 10 buah. Berikut ini akan diperlihatkan
tabel untuk bilangan desimal (bilangan berbasis sepuluh)
Desimal 8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Tabel 3.6. Sistem bilangan dasar sepuluh (desimal)
Untuk menghitung suatu basis bilangan desimal, harus dimulai dari
nilai yang terkecil (yang paling kanan).
Contoh :
1243 = (1 X 103 ) + (2 X 102 ) + (4 X 101 ) + (3 X 100 ) = 1000 + 200
+ 40 + 3
752,91 = (7 X 102 ) + (5 X 101 ) + (2 X 100 ) + (9 X 10-1) + (1 X 10-2)
= 700 + 50 + 2 + 0,9 + 0,01
Jika diketahui suatu bilangan dengan sistem bilangan dasar sepuluh
(desimal) dalam bentuk angka atau simbol 52 (5210) maka bilangan
sistem binernya sama dengan 1101002 diperoleh dari :
5210 = ( 5 x 101 ) + (2 x 100 )
= ( 1 x 25 ) + ( 1 x 24 ) + ( 0 x 23 ) + ( 1 x 22 ) + ( 0 x 21 ) + ( 0 x 20 )
= 32 + 16 + 0 + 4 + 0 + 0 = 1101002
Jika diketahui suatu bilangan dengan sistem bilangan dasar dua
(biner) dalam bentuk 1001012 maka bilangan dengan sistem bilangan
d











