Pengantar Perangkat Lunak Komputer BAB III PENGANTAR PERANGKAT LUNAK KOMPUTER 3.1. Pendahuluan Suatu sistem komputer harus memiliki 3 komponen (elemen) agar dapat berfungsi sebagaimana mestinya, yaitu perangkat keras (hardware), perangkat lunak(software) dan sumberdaya manusia (brainware). Penggunaan komputer tidak cukup hanya dengan peralatan fisik (hardware) saja, tetapi juga diperlukan peralatan lain yang berfungsi untuk mengatur yaitu brainware dan software. Persyaratan bagi seorang brainware adalah personil yang cakap dan mampu menangani sistem komputer yang akan digunakan. Oleh karena itu seorang brainware harus mempunyai kecakapan di bidang hardware dan keahlian di bidang software. Perangkat lunak (software) komputer merupakan sebuah program yang ditulis dan dikemas sedemikian rupa untuk mengendalikan perangkat keras sehingga dapat melakukan tugas-tugas tertentu. Tanpa perangkat lunak, komputer hanyalah barang rongsokan yang tidak dapat digunakan sama sekali. 3.2. Penggolongan Perangkat Lunak Secara umum, perangkat lunak dapat dibedakan menjadi 5 golongan, yaitu sistem operasi (operating system), program bantu atau utilitas (utility), program paket (package program), program aplikasi (application program) dan bahasa pemrograman (programming language). 3.2.1. Sistem Operasi Sistem operasi merupakan perangkat lunak yang menangani fungsi- fungsi dasar seperti mengatur media masukan – proses – keluaran, mengatur tabel pengkodean, mengatur memori, mengatur penjadwalan prosesor dan menyediakan fasilitas-fasilitas tententu sehingga golongan perangkat lunak la innya dapat Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD 22 Pengantar Perangkat Lunak Komputer 23 bekerja. Tanpa sistem operasi, komputer dan golongan perangkat lunak yang lain tidak dapat digunakan sebagaiman mestinya. Beberapa perangkat lunak yang tergolong sebagai sistem operasi adalah sebagai berikut: a. PC-DOS (Personal Computer Disk Operating System), merupakan sistem operasi yang paling banyak digunakan untuk komputer-komputer pribadi di Indonesia. b. MS-DOS (Microsoft Disk Operating System), merupakan versi lain dari sistem operasi PC-DOS. c. UCSD p-System (University of California at San Diego pseudo System). d. OS/2 (Operating System 2), merupakan sistem operasi yang dibuat untuk keluarga komputer PS/2. e. UNIX, merupakan sistem operasi yang pada awalnya diciptakan untuk komputer-komputer besar (mainframe), kemudian dikembangkan untuk komputer sedang (minicomputer), dan terakhir untuk komputer pribadi (PC). f. XENIX, merupakan versi UNIX yang dikembangkan oleh Microsoft untuk komputer IBM PC/AT. g. CP/M-86 (Control Program for Microprocessor 8086) h. CCP/M-86 (Concurrent CP/M-86) i. Windows, merupakan sistem operasi yang dikembangkan oleh Microsoft untuk mendukung konsep multi user, multi programming, multi processing, multi tasking dan time sharing. j. Linux, merupakan sistem operasi berbasis UNIX yang dapat berjalan di berbagai macam perangkat keras terutama di PC berbasis Intel x86. Dikatakan berbasis UNIX karena Linux dikembangkan menurut standar yang dimiliki UNIX dan kemampuan yang sama dengan UNIX. Artinya Linux memiliki kemampuan baik sebagai server maupun workstation layanknya UNIX. Sekarang Linux telah dapat berjalan pula pada Macintosh (Motorolla), Sun Sparc, DEC Alpha, Amiga, StrongARM dan masih banyak lagi. k. Windows NT, merupakan versi Windows yang lebih dikhususkan untuk jaringan (networking). Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD Pengantar Perangkat Lunak Komputer 24 Istilah- istilah : Multi User : beberapa pemakai komputer dapat secara bersama-sama mempergunakan komputer secara independen. Multi Programming : beberapa kegiatan pengembangan perangkat lunak dapat dilakukan secara bersama-sama pada suatu komputer, satu bahasa tanpa terikat pada sistem yang dipergunakan. Multi Processing : beberapa program dapat diolah secara bersama-sama pada satu komputer. Multi Tasking : beberapa tugas (task) dapat secara bersama-sama dijalankan di dalam beberapa bagian, dimana masingmasing bagian merupakan tugas (task) yang harus dijalankan oleh komputer. Time Sharing : erat hubungannya dengan multi processing. Di dalam komputer mewujudkan multi processing, komputer memilah- milah waktu untuk mengolah program yang harus dijalankan. Secara bergantian komputer mengerjakan semua program tersebut. 3.2.2. Program Utilitas (Program bantu) Program utilitas merupakan perangkat lunak yang bertugas untuk melakukan pekerjaan-pekerjaan minor dalam pengorperasian mesin, seperti mempersiapkan pemakaian media disk, membuat/menghapus proteksi suatu sistem software, manajemen berkas (mengkopi dan menghapus berkas, membatalkan penghapusan berkas, mengelompokkan berkas ke dalam suatu direktori), diagnosa dan perbaikan berkas yang rusak, fragmentasi media penyimpan (memaksimalkan penggunaan hardisk atau disket) dan lain- lain. Beberapa contoh perangkat lunak yang tergolong sebagai program adalah : a. NC (Norton Commander) b. NU (Norton Utility) c. PC-TOOLS Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD Pengantar Perangkat Lunak Komputer 25 d. Diagnostic Test e. Disk optimizer f. Copy Tools g. Advance Diagnostic h. dan lain- lain 3.2.3. Program Paket Program paket adalah sebuah perangkat lunak mengerjakan keperluan-keperluan tertentu. Program yang kompleks untuk paket masih dapat program yang digolongkan lagi ke dalam beberapa golongan : a. Pengolah kata (Word Processor), merupakan paket memanfaatkan komputer sebagai mesin ketik canggih. Contoh : WordStar (WS), Multimate, PFS Write, Lotus Manuscript, Turbo Sprint, Chi Writter (CW), Word Perfect (WP), Amipro (dari Lotus), Microsoft Word (MS Word) dll. b. Spreadsheet, merupakan paket program yang membuat komputer dapat berfungsi sebagai kertas kerja yang dilengkapi dengan fasilitas perhitunganperhitungan otomatis. Contoh : Lotus 1-2-3, Quatro, MS Excell, SuperCalc, Symphony, Multiplan, Javelin, Visicalc, Enable, SmartWork, FrameWork, Open Access, dll. c. Publisher, merupakan paket program yang diciptakan untuk keperluan setting percetakan (mengatur tampilan halaman surat kabar, majalah, tabloid, buku). Contoh : PageMaker Publisher, Xerox Venture Publisher, Harvard Publisher, Click Art Publisher, dll. d. Database (Pengolah Data) Contoh : dBASE, Paradox, dBXL, FoxBase, DacEasy Base, Knowledge Man, RBASE 5000, RapidFile, Reflex, Revelation, Clipper, Microsoft Access, dll. e. Statistik Contoh : SPSS/PC+, SAS, SYSTAT, STATGRAPHICS, MicroSTAT, Mathematics, dll. Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD Pengantar Perangkat Lunak Komputer 26 f. Computer Aided Design, merupakan paket program yang diciptakan khusus untuk keperluan desain (perancangan). Contoh : − AutoCad dan ArchiCad (paket program untuk perancangan arsitektur bangunan, produk manufaktur) − Microsim PSpice, Electronic Workbench, OrCad dan Protel (untuk simulasi, analisis dan perancangan rangkain elektronika analog maupun digital) − SAP (Structural Analisis Program, untuk struktur bangunan, biasa digunakan orang teknik sipil) − PC Paint Brush, Drafix, ProDesign, In-A-Vision, Corel Draw, Visio Technical, dll. 3.2.4. Program Aplikasi Program aplikasi merupakan program yang siap dipakai untuk beberapa aplikasi tertentu. Beberapa program yang dapat digolongkan sebagai program aplikasi adalah DEA (Dac Easy Accounting), PrintShop, IUS Accunting Plus Series, Interactive EasyFlowl, FormTool, PrintShop, PhotoShop, Matlab, MatChad dan lain- lain. 3.2.5. Bahasa Pemrograman Bahasa pemrograman sebenarnya sebuah perangkat lunak yang diciptakan secara khusus untuk membuat perangkat lunak golongan lainnya (program utilitas, pakaet program, program aplikasi dan bahkan sis tem operasi). Berdasarkan kedekatannya dengan bahasa manusia, bahasa pemrograman ini dibedakan menjadi 3 tingkatan : a. Bahasa pemrogram tingkat tinggi Merupakan bahasa pemrograman yang instruksinya paling dekat dengan manusia (dalam hal ini bahsa inggris), seperti : BASIC, FORTRAN, Pascal, Clipper, COBOL, LISP, ADA, ALGOL, Modula 2, Smalltalk, Prolog dan lain- lain. Program yang dihasilkan dengan bahasa tingkat tinggi ini lebih Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD Pengantar Perangkat Lunak Komputer 27 lambat dibandingkan dengan program yang dihasilkan dengan bahasa pemrograman yang lebih rendah tingkatannya, tetapi lebih mudah pemrogramannya. b. Bahasa pemrograman tingkat menengah Merupakan bahasa pemrograman yang instuksinya masih dekat dengan bahasa manusia tetapi program yang dihasilkan mempunyai kecepatan yang lebih baik daripada bahasa pemrograman tingkat tinggi. Penggolongan tingkat menengah ini sebenarnya muncul belakangan. Contoh bahasa pemrograman tingkat menengah adalah bahasa C dan Java. c. Bahasa pemrograman tingkat rendah Merupakan bahasa dasar komputer (disebut juga sebagai bahasa rakitan). Pemrograman dengan bahasa tingkat rendah ini memerlukan logika yang cukup rumit di samping instruksinya yang jauh berbeda dengan bahasa manusia. Program yang dihasilkan dengan bahasa pemrograman ini mempunyai kecepatan yang baik. Contoh bahasa perograman tingkat rendah adalah bahasa Assembly (Asembly = rakitan, Asembler = perakit). Selain pengelompokkan di atas, ada buku yang mengelompokkan bahasa pemrograman ke dalam tiga kelompok lain, yaitu Bahasa Mesin (Machine Language), Bahasa Assembly (Assembly Language), dan Bahasa tingkat tinggi (High Level Language). a. Bahasa Mesin (Machine Language) Bahasa pemrograman yang menggunakan urutan instruksi yang direpresentasikan dalam bilagan biner 0 dan 1. instruksi- instruksi pada katagori ini merupakan le vel terendah, artinya instruksi- instruksi yang dapat langsung diterima dan dilaksanakan oleh komputer tanpa komputer harus menerjemahkan terlebih dahulu. Kode 0 dan 1 yang digunakan untuk menyusun instruksi dikenal dengan kode biner. Cara lain merepresentasikan kode biner adalah kode octal atau kode hexadesimal. b. Bahasa Assembly (Assembly Language) Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD untuk Pengantar Perangkat Lunak Komputer 28 Bahasa pemrograman yang menggunakan kode-kode yang merupakan kombinasi huruf dan angka sehingga membentuk simbol-simbol yang sudah dibakukan. Kode yang dipakai dikenal dengan kode simbolic. c. Bahasa tingkat tinggi (High Level Language). Bahasa pemrograman yang berorientasi pada pemakai komputer. Karena berorientasi pemakai, maka agar dapat diterima dan dilaksanakan oleh komputer, instruksi yang ada dalam bahasa tingkat tinggi perlu diterjemahkan terlebih dahulu. Penterjemah ada tiga macam : − Assembler : untuk menerjemahkan program yang ditulis dalam kode simbolic ke bahasa mesin. Makro assembler dipergunakan untuk menerjemahkan program yang ditulis dalam bahasa assembly dengan fasilitas makro (makro adalah instruksi semu (instruksi baru yang terdiri dari beberapa instruksi dalam bahasa assembly)) − Interpreter : untuk menerjemahkan setiap instruksi bahasa tingkat tinggi dan langsung melaksanakan. Jadi interpreter menerjemahkan baris demi baris. − Compiler : untuk menerjemahkan setiap instuksi bahasa tingkat tinggi ke bahasa mesin. Perbedaannya dengan interpreter, compiler menerjemahkan lebih dahulu seluruh kemudian melaksanakannya. Diktat Dasar Komputer dan Pemrograman T. Elektro FTI UAD program baru