W E L C O M E


TOMY RENDHY


"" S E L A M A T D A T A N G D I B L O G I N I ""

Pengertian USB.
USB adalah singkatan dari Universal Serial Bus. USB merupakan suatu teknologi yang memungkinkan kita untuk menghubungkan alat eksternal (peripheral) seperti scanner, printer, mouse, papan ketik (keyboard), alat penyimpan data (zip drive), flash disk, kamera digital atau perangkat lainnya ke komputer kita.
  

USB sangat mendukung transfer data sebesar 12 Mbps ( juta bit per detik). Komputer (PC) saat ini, umumnya sudah memiliki port USB. Biasanya disediakan minimal 2 port. Jika dibandingkan dengan paralel port dan serial port, penggunaan port USB lebih mudah dalam penggunaannya.


Jika dibuka, kabel USB akan terlihat ada 4 warna, yaitu merah, coklat, kuning dan biru. Kabel berwarna merah dan coklat berfungsi sebagai power / untuk arus listrik. Kabel berwarna kuning dan biru berfungsi untuk membawa / mentransfer data.
USB (Universal Serial Bus). Sebuah perangkat Hardware berupa Konektor USB yang dapat ditancapkan keberbagai perangkat mulai dari mouse sampai printer dengan mudah dan cepat. 

Sistem operasi saat ini juga sangat mendukung keberadaan USB, mulai versi windows XP ke atas bahkan sudah terdapat installer berbagai perangkat USB yang include dalam satu paket program windows tersebut.

Tujuan diciptakan USB adalah untuk mempermudah pengguna komputer untuk mengkoneksikan suatu perangkat ke perangkat lain.

Contoh perangkat yang telah dibuat dalam versi port USB antara lain:
  1. Printer
  2. Scanner
  3. Mouse
  4. Joystick
  5. Camera Digital
  6. Webcam
  7. Modem
  8. Dan perangkat lainnya
Menyambungkan perangkat USB pada komputer sangatlah mudah. Kita hanya perlu mencari port USB pada bagian belakang casing komputer kita, kemudian tancapkan konektor USB perangkat yang mau kita pasang ke konektor USB komputer kita.
 type USB

Jika perangkat yang kita tancapkan adalah perangkat baru yang belum pernah terinstall sebelumnya, maka sistem operasi komputer anda secara otomatis akan mencoba mengenalinya dengan auto detect. Jika driver perangkat tersebut sebelumnya sudah terinstall di komputer maka kita dapat langsung menggunakan perangkat tersebut.

Banyak jenis perangkat USB dilengkapi dengan kabel konektor USB sendiri. Ada 2 jenis konektor USB yang berada dipasaran perangkat elektronika maupun komputer yaitu konektor USB tipe A dan tipe B (lihat pada gambar di atas) USB standar menggunakan konektor jenis A dan jenis B untuk mempermudah konsumen.

Sebagian besar komputer yang ada pada saat ini hanya dilengkapi paling banyak 4 port USB. Saat ini sudah banyak tersedia USB HUB di pasaran dengan harga yang terjangkau, USB standar mampu mendukung sampai 127 perangkat dalam 1 port. Salah satu diantaranya adalah USB HUB. 

 type Konektor
Proses yang terjadi di USB
Ketika host (komputer) mencatu perangkat USB, host mendata perangkat yang terhubung ke bus USB dan menyiapkan alamat memori untuk masing-masing perangkat tersebut. Proses tersebut disebut enumerasi.

Perangkat USB tersebut juga langsung diinisialisasi oleh host ketika terhubung ke bus USB. Host juga mencoba mencari dan memilihkan tipe transfer data apa yang cocok untuk perangkat tersebut, 
sebagai contoh :
  • Interrupt, untuk perangkat yang hanya memerlukan transfer data kecil, seperti mouse dan keyboard.
  • Bulk, untuk perangkat yang memerlukan transfer data yang besar, seperti printer
  • Isochronous, untuk perangkat yang memerlukan transfer data dua arah dan memerlukan resolusi tinggi, seperti speaker dan webcam.
Host dapat juga mengirim perintah dan mendata parameter-parameter yang diperlukan dengan menggunakan control packet, setelah perangkat di data oleh host kemudian mengatur total bandwidth yang diperlukan oleh perangkat yang menggunakan mode isochronous dan interrupt.

Perangkat dengan mode transfer data tersebut dapat menggunakan sampai 90% dari total 480 Mbps yang disediakan port USB. Setelah 90% bandwidth tersebut dipakai, host akan menolak akses ke perangkat isochronous dan interrupt yang lain. Control Packet dan paket untuk transfer data tipe bulk kemudian menggunakan total bandwidth yang tersisa tersebut (sedikitnya 10%).

USB membagi bandwidth yang tersisa dalam betuk frame-frame, host kemudian mengontrol frame-frame tersebut. Frame mengandung 1500 byte yang terbentuk setiap milidetik dalam frame, perangkat dengan mode transfer data isochronous dan interrupt mendapatkan jatah bandwidth tersendiri sesuai dengan kebutuhan bandwidth perangkat tersebut

USB Ports

USB, or Universal Serial Bus, is the most common type of interface and has become the standard interface on all current computers, whether they are on a PC (i.e. Windows) or Mac (OS 9, OS X) platform. Most computers come with at least 4 USB ports built into the computer, and many of them have additional ports on the front of the computer (Front Side USB ports). If you run out of USB ports, you can purchase a USB Hub which plugs into one USB port, and gives you additional ports (i.e. like a power bar gives you multiple power outlets from a single wall outlet).
There are two types of USB ports which look physically identical; USB 1.1 and USB 2.0. USB 1.1 was the previous standard and is all you need for any keyboard or mousing device. Certain high speed devices like flash memory sticks or portable scanners will take advantage of USB 2.0's faster speed (almost 40x as fast) or increased power delivery capabilities. Your computer will advise you if a device would benefit from using a USB 2.0 port if you plug it into a USB 1.1 port. You will not harm your keyboard or mouse by plugging it into a USB 2.0 port.
Finding the USB Port on your computer is easy. It is usually labelled with the letters USB if it is on the front of your computer case or the words 'Univeral Serial Bus'.
If you are looking for USB ports on the back of your computer they usually are indicated by a symbol which looks like a cactus (shown at right).
A USB plug (what is at the end of the cable which is attached to your keyboard or mouse).
A USB port (where you insert your plug into your computer).

PS/2 Ports

PS/2 ports were the previous standard before USB for keyboards and mice. They were no faster than Serial ports (see below) but were primarily created to help users by assigning a different shape to the port used for your keyboard (and mouse). This new plug was created by IBM when they launched their PS/2 line of computers in 1987, and while their concept of proprietary hardware failed to survive, many of their design ideas (including the color coded PS/2 ports for mice and keyboards) eventually became the industry standard. The technical term for the PS/2 keyboard interface is a Mini-DIN 6 plug (which replaced the previous standard which was the DIN 5 plug, known as the AT connector). The Mini-DIN 6 plug for the mouse replaced the 9 pin Serial port connector (see below).
Most computers manufactured prior to 2006 came with 2 PS/2 ports, a purple one for the keyboard and a green one for the mouse. Computers built more recently typically no longer have PS/2 ports on them, although some manufacturers are still supporting this standard, as there is no loss of performance in using a PS/2 interface for keyboards and mice. If you need more than one PS/2 port (i.e. for 2 PS/2 keyboards), you have to purchase a PS/2 splitter or a KVM switch.
A PS/2 plug (what is at the end of the cable which is attached to your keyboard (purple) or mouse (green)).
A PS/2 port (where you insert in your keyboard plug (purple) or mouse plug (green) into your computer).

Serial Ports

Serial ports come in a wide range of sizes and shapes and were the original standard for interfacing any device with any other device on a computer. Today, they are rarely used and when one talks of a serial port, they usually mean the DB9 connector (shaped like a trapesoid). Typically they are only used on computers used in industrial environments or as a means of interfacing with an industrial control.
A Serial plug (what is at the end of the cable which is attached to your mouse).
A Serial port (where you insert in your mouse plug into your computer).

TIPE-TIPE PORT USB

Sobat-sobat tentunya dah tahu dengan USB kan? kalo belum monggo mampir kesini dulu. Biasanya USB digunakan untuk flashdisk, printer, handphone yang menggunakan USB. Banyak banget kegunaan dalam transfer data melalui USB. Kenapa demikian? Kalo menurut saya sih simpel, dan gadget sekarang rata-rata dilengkapi dengan port USB. Banyak jenis port USB, untuk menambah pengetahuan mari kita lihat gimana sih bentuk2 port USB? Berikut jenisnya.

Mengenal Perbedaan USB 2.0 dengan USB 3.0


Hampir setiap orang tentu mengenal dan menggunakan Universal Serial Bus atau lebih dikenal dengan sebutan USB. Definisi USB sendiri adalah cara komunikasi antara peralatan dengan Host Controller(biasanya PC).
USB ini sering dijumpai pada printer, komputer, scanner, handphone, mouse, kamera digital, flash drive, dsb. Sebelum ada USB, lebih dulu dikenal port serial dan parallel. Namun untuk saat ini, port USB telah menjadi port komunikasi yang standar.
USB 2.0
Teknologi USB 2.0 dikenalkan pada sekitar April 2000. Untuk kecepatan transfer(transfer rate), USB 2.0 bisa mencapai maksimal 480 Mbit/detik. Namun pada prakteknya, jarang sekali kecepatan USB 2.0 bisa sampai di atas 300 Mbit/detik. Selain itu, USB 2.0 memerlukan suplai maksimal daya sebesar 500mA. Sedangkan untuk pin steker pada USB 2.0 berjumlah 4 buah.
Tipe-tipe port USB
USB 3.0
Berbeda dengan USB 2.0, teknologi USB 3.0 diperkenalkan sejak tahun 2007. Keunggulan yang diusung oleh USB 3.0 bila dibandingkan USB 2.0 adalah kecepatan transfer datanya(transfer rate) yang mampu mencapai 5 Gbit/detik. Wow, hampir 10x lipat USB 2.0 kan? Perbedaan lain adalah permasalahan panjang kabel data. Jika pada USB 2.0, Anda disarankan manambah panjang kabel dengan maksimal 3 M untuk menjaga kecepatan transfer data tetap akurat. Di USB 3.0, panjang kabel bukan lagi faktor yang mempengaruhi kecepatan transfer data. Selain itu, USB 2.0 memerlukan suplai maksimal daya sebesar 900 mA.
Kelebihan lain USB 3.0 dibandingan dengan USB 2.0 adalah sifatnya yang full duplex, artinya bahwa USB host dapat melakukan send and receive data secara terus menerus. Sedangkan untuk pin steker, USB 3.0 memiliki pin berjumlah 5 buah.
Kelemahan USB 3.0
Salah satu kekurangan USB 3.0 adalah belum ada dukungan dari sistem operasi. Sementara ini, Anda harus meng­install driver tambahan dari vendor tersebut agar bisa mendukung teknologi USB 3.0. Selain itu, baru sedikit perangkat keras (hardware) yang sudah mensupport USB 3.0. Oleh karena itu, hanya sedikit diantara banyak orang yang telah mencicipi teknologi USB 3.0 ini.
Dari paparan diatas, dapat disimpulkan bahwa perbedaan yang cukup mencolok antara USB 2.0 dengan USB 3.0 adalah tingkat kecepatan pengiriman data, yakni 400 Mbit/detik untuk USB 2.0 dan 5 Gbit/detik untuk USB 3.0.

Penjelasan tentang Teknologi Port I/O


1.     COM

COM (Component Object Model) teknologi dalam keluarga Windows Microsoft Sistem Operasi memungkinkan komponen perangkat lunak untuk berkomunikasi. COM digunakan oleh pengembang untuk membuat komponen software yang dapat digunakan kembali, komponen link bersama-sama untuk membangun aplikasi, dan mengambil keuntungan dari layanan Windows. Objek COM dapat dibuat dengan berbagai bahasa pemrograman. Bahasa berorientasi objek, seperti C + +, menyediakan mekanisme pemrograman yang mempermudah implementasi objek COM. Keluarga COM teknologi termasuk COM +, COM Terdistribusi (DCOM) dan ® ActiveX Controls.
Microsoft menyediakan antarmuka COM bagi banyak antarmuka pemrograman aplikasi Windows seperti Tampilkan Direct, Media Foundation, Kemasan API, Windows Animasi Manager, Windows Portable Devices, dan Microsoft Active Directory (AD).
COM digunakan dalam aplikasi seperti Microsoft Office Keluarga produk. Misalnya COM teknologi OLE memungkinkan dokumen Word untuk secara dinamis link ke data dalam spreadsheet Excel dan Otomasi COM memungkinkan pengguna untuk membangun script dalam aplikasi mereka untuk melakukan tugas yang berulang atau mengontrol satu aplikasi dari yang lain.

2.     Paralel

Parallel port adalah port komunikasi dari komputer yang datanya dikirim dengan sistem parallel, artinya data 8 bit dikirim langsung bersama-sama dari bit 0 sampai bit 7. Parallel port juga dikenal dengan Printer Port atau Centronics Port. Parallel Port menggunakan koneksi jenis DB-25 Female. LPT sendiri diambil dari singkatan kata Line Printer.
3.     USB

Universal Serial Bus adalah standar bus serial untuk perangkat penghubung, biasanya kepada komputer namun juga digunakan di peralatan lainnya seperti konsol permainan, ponsel dan PDA.
Sistem USB mempunyai desain yang asimetris, yang terdiri dari pengontrol host dan beberapa peralatan terhubung yang berbentuk pohon dengan menggunakan peralatan hub yang khusus.
Desain USB ditujukan untuk menghilangkan perlunya penambahan expansion card ke ISA komputer atau bus PCI, dan memperbaiki kemampuan plug-and-play (pasang-dan-mainkan) dengan memperbolehkan peralatan-peralatan ditukar atau ditambah ke sistem tanpa perlu mereboot komputer. Ketika USB dipasang, ia langsung dikenal sistem komputer dan memroses device driver yang diperlukan untuk menjalankannya.
USB dapat menghubungkan peralatan tambahan komputer seperti mousekeyboardpemindai gambar, kamera digital,printerhard disk, dan komponen networking. USB kini telah menjadi standar bagi peralatan multimedia seperti pemindaigambar dan kamera digital.

4.     SCSI

Small Computer System Interface (SCSI) merupakan set standar untuk menghubungkan secara fisik dan mentransfer Dataantara komputer dan periferal . SCSI mendefinisikan perintah, protokol (komputer) dan antarmuka listrik dan optika . SCSI ini paling sering digunakan untuk Cakram Keras, tetapi dapat menghubungkan berbagai perangkat lain, termasuk pemindai dan drive CD . SCSI mendefinisikan set perintah secara spesifik untuk jenis periferal, sesuatu yang "tidak diketahui – unknown¬" sebagai salah satu jenis yang mengartikan bahwa secara Teori dapat digunakan sebagai antarmuka ke hampir perangkat apapun, namun standar ini sangat pragmatis dan ditujukan terhadap persyaratan komersial . Setiap perangkat melekat padabus komputer SCSI dengan cara yang sama, terhitung sampai dengan 8 atau 16 perangkat yang dapat menempel pada bus komputer tunggal. SCSI menggunakan [sinyal|sinyal elektrik] berjabat tangan antar perangkat, SCSI-1, SCSI-2 memiliki pilihan untuk memeriksa kesalahan paritas. protokol (komputer) SCSI mendefinisikan komunikasi dari Nama host-ke- Nama hostNama host-ke-periferalperiferal -ke-periferal. Namun sebagian besar periferal yang secara khusus merupakan target SCSI, tidak mampu bertindak sebagai insiator SCSI - tidak dapat melakukan transaksi SCSI sendiri. Oleh karena itu,komunikasi periferal -to-periferal jarang terjadi, tapi mungkin juga terjadi pada aplikasi SCSI umum. The Symbios Logic chip 53C810 adalah contoh dari antarmuka PCI Nama host yang dapat bertindak sebagai target SCSI.

5.     Infrared

Port ini digunakan untuk mendukung hubungan tanpa kabel, misalnya untuk menghubungkan mouse yang menggunakan infra merah sebagai media tranmisi, mengirim data dari ponsel, dan sebagainya

6.     Serial

Serial Port atau biasa disebut dalam bahasa Indonesia adalah port seri merupakan sebuah port pada personal computer yang berfungsi untuk mentransmisikan satu bit informasi pada satu satuan waktu. Dalam serial port, pengiriman informasi tidak memungkinkan untuk melakukan secara banyak sekalius. Hal ini disebabkan karena dalam melakukan pemindahan data, biasanya serial port bekerja seri, misalnya COM 1 dan COM 2. Untuk penggunaan port serial sekarang ini sudah berkurang. Penggunaan port serial telah tergantikan dengan port USB dan Firewire. Sedangkan untuk jaringan (networking) fungsinya sudah tergantikan dengan port Ethernet. Berikut beberapa fungsi serial port yaitu menghubungkan antara peripheral (alat) computer lain dengan motherboard, penghubung antara mouse dengan motherboard, penghubung antara modem dengan motherboard, dan mentransmisikan informasi-informasi berupa bit-bit dari mainboard ke perangkat lainnya.

7.     HDMI

 High-Definition Multimedia Interface (HDMI) adalah salahsatu antarmuka (interface) peralatan audio/video digital tanpa kompresi yang didukung oleh industri. HDMI menyediakan antarmuka antara beberapa sumber audio/video digital yang cocok, saperti set-top boxpemutar DVD atau penerima AV serta audio digital dan/atau monitor video yang cocok, sapertitelevisi digital (DTV).
HDMI mendukung video standar, yang lebih tinggi, ataupun definisi tinggi, ditambah dengan audio digital multi kanal pada kabel tunggal. Hal ini tak tergantung pada standar DTV seperti ATSC, dan DVB(-T,-S,-C), karena semuanya merupakanenkapsulasi stream data MPEG, yang dilewatkan pada dekoder, dan keluar sebagai data video tak terkompresi, yang bisa jadi berdefinisi tinggi. Data video ini kemudian dikodekan menjadi TMDS untuk transmisi digital melalui HDMI. HDMI juga mendukung 8 kanal audio digital tak termampatkan. Dimulai dengan versi 1.2, saat ini HDMI mendukung hingga 8 kanal audio satu bit. Audio satu bit digunakan pada CD Super Audio.

8.     1394

IEEE 1394, merupakan sebuah standar/spesifikasi bus input/output serial yang berkecepatan tinggi dan bersifat umum (non-proprietary) yang dapat digunakan untuk menghubungkan perangkat-perangkat digital seperti halnya komputer pribadi dan perangkat lainnya (kamera digitaljaringan, dan lain-lain). Spesifikasi ini dikembangkan dan diusulkan oleh Apple Computeruntuk menghubungkan perangkat-perangkat digital ke komputer pribadi pada kecepatan hingga 393 megabit per detik (dibulatkan menjadi 400 megabit per detik).
Mikroprosesor adalah sebuah chip (IC) yang bekerja dengan program. Fungsi Mikroprosesor adalah sebagai pengontrol atau pengolah utama dalam suatu rangkaian elektronik. Mikroprosesor biasa disebut juga CPU (Central Processing Unit).

Cara kerja sebuah Mikroprosesor diarahkan oleh suatu program dalam kode-kode bahasa mesin yang telah dimasukkan terlebih dahulu ke dalam sebuah memori. Di dalam Mikroprosesor minimal terdiri dari rangkaian digital, register, pengolah logika aritmatika, rangkaian sekuensial.

Sejarah Mikroprosesor.

  • Th. 1946 : Komputer modern pertama dibuat di University of Pennsylvania USA yang disebut ENIAC (Electronics Numerical Integrator and Calculator.
  • ENIAC terdiri dari 17.000 tabung hampa, 500 mil kabel, berat > 30 ton, dapat menjalankan 100.000 operasi per detik, diprogram dengan mengatur jalur kabel pada rangkaiannya.
  • Th. 1948 : Transistor pertama dibuat di Bell Labs, USA.
  • Th. 1958 : IC (Integrated Circuit) pertama dibuat oleh Jack Kilby dari Texas Instrument, USA.
  • Penemuan IC ini mendorong pengembangan IC Digital (1960), dan mikroprosesor pertama oleh Intel (1971).
  • Mikroprosesor pertama di dunia adalah Intel 4004 merupakan prosesor 4-bit, Kebanyakan Kalkulator masih berbasis mikroprosesor 4-bit.
  • Th. 1971 : Intel mengeluarkan mikroprosesor 8-bit yaitu Intel 8008.
  • Th. 1973 : Intel memperkenalkan mikroprosesor 8-bit modern pertama Intel 8080 (10x lebih cepat dari 8008), dan diikuti Motorola MC6800.
  • Th. 1977 : Intel memperkenalkan 8085 yang merupakan mikroprosesor 8-bit terakhir yang dibuat Intel dengan frek.clock dan kecepatan lebih tinggi.
  • Perusahaan lain yang mampu menyaingi Intel 8085 adalah Zilog Corporation dengan Z80.
  • Th. 1978 : Intel mengeluarkan mikroprosesor 16-bit yaitu 8086, setahun kemudian mengeluarkan 8088 dengan kecepatan eksekusi dan memori lebih besar dari 8085, serta mulai digunakannya cache memori (sistem antrian yang mengatur pemberian instruksi sebelum menjalankannya).
  • Intel 8086/8088 disebut juga CISC (Complex Instruction Set Computer) karena jumlah dan kompleksitas instruksinya.
  • Th. 1981 : IBM membuat PC menggunakan mikroprosesor 8088 untuk menjalankan aplikasi seperti spreadsheet dan pengolah kata.
  • Th. 1983 : Intel mengeluarkan mikroprosesor 16-bit 80286, dengan kemampuan memori 16 MB.
  • Th. 1986 : Intel mengeluarkan mikroprosesor 32-bit pertama 80386, dengan kemampuan memori 4 GB.
  • Th. 1989 : Intel mengeluarkan mikroprosesor 32-bit 80486, dengan kemampuan memori 4 GB + 8K Cache.
  • Th. 1993 : Intel memperkenalkan mikroprosesor 32-bit Pentium I, Th. 1997 Pentium II,kemudian berturut-turut Pentium III dan Pentium 4 pada Th. 2000, dimana mulai digunakan teknologi memori RAMBUS menggantikan teknologi SDRAM.
Sebuah mikroprosesor (sering dituliskan: ÂµP atau uP) adalah sebuah central processing unit (CPU) elektronik komputer yang terbuat dari transistor mini dan sirkuit lainnya di atas sebuah sirkuit terintegrasi semikonduktor.
Sebelum berkembangnya mikroprosesor, CPU elektronik terbuat dari sirkuit terintegrasi TTL terpisah; sebelumnya, transistor individual; sebelumnya lagi, dari tabung vakum. Bahkan telah ada desain untuk mesin komputer sederhana atas dasar bagian mekanik seperti gearshaftleverTinkertoy, dll.
Evolusi dari mikroprosesor telah diketahui mengikuti Hukum Moore yang merupakan peningkatan performa dari tahun ke tahun. Teori ini merumuskan bahwa daya penghitungan akan berlipat ganda setiap 18 bulan, sebuah proses yang benar terjadi sejak awal 1970-an; sebuah kejutan bagi orang-orang yang berhubungan. Dari awal sebagai driver dalam kalkulator, perkembangan kekuatan telah menuju ke dominasi mikroprosesor di berbagai jenis komputer; setiap sistem dari mainframeterbesar sampai ke komputer pegang terkecil sekarang menggunakan mikroprosesor sebagai pusatnya.

[sunting]Karakteristik Mikroprosesor

Berikut adalah karakteristik penting dari mikroprosesor :
  1. Ukuran bus data internal (internal data bus size): Jumlah saluran yang terdapat dalam mikroprosesor yang menyatakan jumlah bit yang dapat ditransfer antar komponen di dalam mikroprosesor.
  2. Ukuran bus data eksternal (external data bus size): Jumlah saluran yang digunakan untuk transfer data antar komponen antara mikroprosesor dan komponen-komponen di luar mikroprosesor.
  3. Ukuran alamat memori (memory address size): Jumlah alamat memori yang dapat dialamati oleh mikroprosesor secara langsung.
  4. Kecepatan clock (clock speed): Rate atau kecepatan clock untuk menuntun kerja mikroprosesor.
  5. Fitur-fitur spesial (special features): Fitur khusus untuk mendukung aplikasi tertentu seperti fasilitas pemrosesan floating point, multimedia dan sebagainya.

penulisan      program menggunakan assembly


BAB V
MEMULAI DENGAN ASSEMBLY

5.1. TEXT EDITOR

 Untuk menuliskan source file untuk program assembly bisa anda gunakan
berbagai editor, misalkan SideKick, WordStar dan Word Perfect. Source file
yang diketikkan harus berupa file ASCII, file ini bisa anda hasilkan melalui
WordStar dengan file 'NON DOCUMEN', atau dengan SideKick. 
 Untuk meyakinkan bahwa source file yang anda  buat adalah file ASCII,
bisa anda coba ketikkan perintah Type pada A>. Bila file yang terlihat dengan
perintah type sama persis dengan yang anda ketikkan pada editor, tanpa
tambahan karakter-karakter yang acak, maka file tersebut adalah file ASCII.
Source file untuk assembly harus berektensi .ASM.

5.2. COMPILER

 Source file ASCII yang telah anda ketikkan perlu dicompile kebentuk file
object dengan extensi .OBJ, dari file object inilah nantinya dapat dijadikan
kebentuk file .EXE atau .COM.
 Untuk mengcompile source file, misalnya file COBA.ASM menjadi file
object dengan extensi .OBJ bisa anda gunakan file TASM.EXE dengan mengetikkan:

C:\>tasm coba
Turbo Assembler  Version 2.0  Copyright (c) 1988,
1990 Borland International

Assembling file:   coba.ASM
Error messages:    None
Warning messages:  None
Passes:            1
Remaining memory:  307k
C:\>dir coba.*

 Volume in drive C is S’to
 Directory of C:\

COBA     OBJ           128 08-12-94  10:42p
COBA     ASM           128 08-12-94  10:41p
        2 file(s)            246 bytes
                       1,085,952 bytes free



5.3. LINGKING

 File object yang telah terbentuk dengan TASM, belum dapat dieksekusi
secara langsung. Untuk membuat file object ke bentuk file yang dapat
dieksekusi(ektensi .COM atau .EXE) bisa anda gunakan file TLINK.EXE. 
 Bila source program yang anda buat dalam bentuk EXE maka untuk membentuk
 20

file dengan ektensi EXE bisa anda ketikkan :
    
C:\>tlink coba
Turbo Link  Version 3.0 Copyright (c) 1987,
1990 Borland International


 Bila source program yang dibuat adalah file COM, maka bisa anda
ketikkan:

C:\>tlink/t coba
Turbo Link  Version 3.0 Copyright (c) 1987,
1990 Borland International




5.4. PERBEDAAN PROGRAM COM DAN EXE

 Program dengan ektensi COM dan EXE mempunya berbagai perbedaan yang
menyolok, antara lain :

PROGRAM COM :
 - Lebih pendek dari file EXE
               - Lebih cepat dibanding file EXE
                   - Hanya dapat menggunakan 1 segmen
                   - Ukuran file maksimum 64 KB (ukuran satu
                     segment)
                   - sulit untuk mengakses data atau procedure 
                     yang terletak pada segment yang lain.
                   - 100h byte pertama merupakan PSP(Program
                     Segment Prefix) dari program tersebut.
                   - Bisa dibuat dengan DEBUG

PROGRAM EXE :
 - Lebih panjang dari file COM
                   - Lebih lambat dibanding file COM
                   - Bisa menggunakan lebih dari 1 segmen
                   - Ukuran file tak terbatas sesuai dengan
                     ukuran memory. 
                   - mudah mengakses data atau procedure pada 
                     segment yang lain.
                   - Tidak bisa dibuat dengan DEBUG


5.5. BENTUK ANGKA

 Assembler mengizinkan penggunaan beberapa bentuk angka , yaitu :

1. DESIMAL

 Untuk menuliskan angka dalam bentuk desimal, bisa digunakan tanda 'D'
pada akhir angka tersebut atau bisa juga tidak diberi tanda sama sekali,
contoh : 298
D
 atau 298 saja.

 21

2. BINER

 Untuk menuliskan angka dalam bentuk biner(0..1), harus ditambahkan tanda
'B' pada akhir angka tersebut, contoh : 01100111
B
.

3. HEXADESIMAL

 Untuk menuliskan angka dalam bentuk hexadesimal(0..9,A..F), harus
ditambahkan tanda 'H' pada akhir angka tersebut. Perlu diperhatikan bahwa bila
angka pertama dari hexa berupa karakter(A..F) maka angka nol harus ditambahkan
didepannya. Bila hal ini tidak dilakukan, assembler akan menganggapnya sebagai
suatu label, bukannya sebagai nilai hexa. Contoh penulisan yang benar:
0
A12
H
,
2A02
H
.

4. KARAKTER

 Penulisan karakter atau string diapit oleh tanda petik dua (
"
)  atau
tanda petik satu(
'
), Contoh:
'
 Ini adalah karakter
'
.

5.6. LABEL

 Label bisa anda definisikan dengan ketentuan akhir dari nama label
tersebut harus berupa tanda titik dua (
:
). Pemberian nama label bisa
digunakan:

- Huruf : A..Z (Huruf besar dan kecil tidak dibedakan)
- Angka : 0..9
- Karakter khusus : @ . _ $

 Nama pada label tidak boleh terdapat spasi dan didahului oleh angka,
Contoh dari penulisan label yang benar: 
mulai:
 MOV CX,7. Nama label
terpanjang yang dapat dikenali oleh assembler adalah 31 karakter.                 

5.7. KOMENTAR

 Untuk memberikan komentar pada source file digunakan tanda '
;
'. Apapun
yang dtuliskan dibelakang tanda '
;
' akan dianggap sebagai komentar, Contoh :
mulai: MOV BX,7 
; berikan nilai 7 pada BX


5.8. PERINTAH MOV

 Perintah MOV digunakan untuk mengcopy nilai atau angka menuju suatu
register,variabel atau memory. Adapun syntax untuk perintah MOV ini adalah :

MOV Tujuan,Asal


Sebagai contohnya : 
MOV AL,9  ; masukkan nilai 9 pada AL.
                     MOV AH,AL ; nilai AL=9 dan AH=9 
                     MOV AX,9  ; AX=AH+AL hingga AH=0 dan AL:=9


 Pada baris pertama(
MOV AL,9
), kita memberikan nilai 9 pada register AL.
Kemudian pada baris kedua(
MOV AH,AL
) kita mengcopykan nilai register AL untuk
AH. Jadi setelah operasi ini register AL akan tetap bernilai 9, dan register
 22

AH akan sama nilainya dengan AL atau 9. Pada baris ketiga(
MOV AX,9
), kita
memberikan register AX nilai 9. Karena AX terdiri atas AH dan AL, maka
register AH akan bernilai 0, sedangkan AL akan bernilai 9.
 Perintah MOV akan mengcopykan nilai pada sumber untuk dimasukan ke
Tujuan, nilai sumber tidaklah berubah. Inilah sebabnya MOV(E) akan kita
terjemahkan disini dengan mengcopy, dan bukannya memindahkan.

5.9. PERINTAH INT

 Didalam pemrograman assambler, kita akan banyak sekali menggunakan
interupsi untuk membantu kita dalam mengerjakan suatu pekerjaan. Untuk
menghasilkan suatu interupsi digunakan perintah INT dengan syntax:
INT
 NoInt  
 Dengan NoInt adalah nomor interupsi yang ingin dihasilkan. Sebagai
contohnya bila kita ingin menghasilkan interupsi 21h, bisa dituliskan dengan:
INT 21h
, maka interupsi 21h akan segera terjadi.

 23

BAB VI
MEMBUAT PROGRAM COM

6.1. MODEL PROGRAM COM

 Untuk membuat program .COM yang hanya menggunakan 1 segment, bisa anda
buat dengan model program seperti gambar 6.1. Bentuk yang digunakan disini
adalah bentuk program yang dianjurkan(Ideal). Dipilihnya bentuk program ideal
dalam buku ini dikarenakan pertimbangan dari berbagai keunggulan bentuk
program ideal ini seperti, prosesnya lebih cepat dan lebih mudah digunakan 
oleh berbagai bahasa tingkat tinggi yang terkenal(Turbo Pascal dan C).

  -----------------------------------------------------------
           
.MODEL SMALL
            .CODE
             ORG 100H

   
    Label1 :
JMP
 Label2
             +---------------------+
             | TEMPAT DATA PROGRAM |
             +---------------------+

    Label2 : +---------------------+
             | TEMPAT   PROGRAM    |
             +---------------------+

            
INT
 20H                  
    
END
     Label1
  -----------------------------------------------------------
Gambar 6.1. Model Program COM



 Supaya lebih jelas bentuk dari program ideal, marilah kita telusuri
lebih lanjut dari bentuk program ini.

6.1.1 .MODEL SMALL

 Tanda directive ini digunakan untuk memberitahukan kepada assembler
bentuk memory yang digunakan oleh program kita. Supaya lebih jelas model-model
yang bisa digunakan adalah :
- TINY

 Jika program anda hanya menggunakan 1 segment seperti program COM. Model
ini disediakan khusus untuk program COM.
- SMALL

 Jika data dan code yang digunakan oleh program kurang dari ukuran 1
segment atau 64 KB.
- MEDIUM

 Jika data yang digunakan oleh program kurang dari 64 KB tetapi code yang
digunakan bisa lebih dari 64 KB. 
 24

- COMPACT

 Jika data yang digunakan bisa lebih besar dari 64 KB tetapi codenya
kurang dari 64 KB.
- LARGE

 Jika data dan code yang dipakai oleh program bisa lebih dari 64 KB.
- HUGE

 Jika data, code maupun array yang digunakan bisa lebih dari 64 KB.
 Mungkin ada yang bertanya-tanya mengapa pada program COM yang dibuat
digunakan model SMALL dan bukannya TINY ? Hal ini disebabkan karena banyak
dari compiler bahasa tingkat tinggi yang tidak bisa berkomunikasi dengan model
TINY, sehingga kita menggunakan model SMALL sebagai pemecahannya.

6.1.2 .CODE

 Tanda directive ini digunakan untuk memberitahukan kepada assembler
bahwa kita akan mulai menggunakan Code Segment-nya disini. Code segment ini
digunakan untuk menyimpan program yang nantinya akan dijalankan.

6.1.3. ORG 100h

 Pada program COM perintah ini akan selalu digunakan. Perintah ini
digunakan untuk memberitahukan assembler supaya program pada saat
dijalankan(diload ke memory) ditaruh mulai pada offset ke 100h(256) byte.
Dapat dikatakan juga bahwa kita menyediakan 100h byte kosong pada saat program
dijalankan. 100h byte kosong ini nantinya akan ditempati oleh PSP(Program
Segment Prefix) dari program tersebut. PSP ini digunakan oleh DOS untuk
mengontrol jalannya  program tersebut.

6.1.4. JMP

 Perintah JMP(JUMP) ini digunakan untuk melompat menuju  tempat yang
ditunjukkan oleh perintah JUMP. Adapun syntaxnya adalah:

JUMP Tujuan
 Dimana tujuannya dapat berupa label seperti yang digunakan pada bagan
diatas. Mengenai perintah JUMP ini akan kita bahas lebih lanjut nantinya. 
 Perintah JUMP yang digunakan pada bagan diatas dimaksudkan agar melewati
tempat data program, karena jika tidak ada perintah JUMP ini maka data program
akan ikut dieksekusi sehingga kemungkinan besar akan menyebabkan program anda
menjadi Hang.

6.1.5. INT 20h

 Perintah
INT
 adalah suatu perintah untuk menghasilkan suatu interupsi
dengan syntax:
INT NoInt

 Interupsi 20h berfungsi untuk mengakhiri program dan menyerahkan kendali
sepenuhnya kepada Dos. Pada program COM cara ini bukanlah satu-satunya tetapi
cara inilah yang paling efektif untuk digunakan. Bila anda lupa untuk
mengakhiri sebuah program maka program anda tidak akan tahu kapan harus
selesai, hal ini akan menyebabkan komputer menjadi hang.

 25

BAB 7
MENCETAK HURUF

7.1. MENCETAK HURUF

 Bila dihasilkan interupsi 21h apa yang akan dikerjakan oleh komputer ?.
Jawabnya, ada banyak sekali kemungkinan. Pada saat terjadi interupsi 21h maka
pertama-tama yang dilakukan komputer adalah melihat isi atau nilai apa yang
terdapat pada register AH. Misalkan bila nilai AH adalah 2 maka komputer akan
mencetak sebuah karakter, berdasarkan kode ASCII yang terdapat pada register
DL. Bila nilai pada register AH bukanlah 2, pada saat dilakukan interupsi 21h
maka yang dikerjakaan oleh komputer akan lain lagi.
 Dengan demikian kita bisa mencetak sebuah karakter yang diinginkan
dengan meletakkan angka 2 pada register AH dan meletakkan kode ASCII dari
karakter yang ingin dicetak pada register DL sebelum menghasilkan interupsi
21h. 

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
;   PROGRAM : A0.ASM            ;
;   FUNGSI  : MENCETAK KARATER  ;
;             'A' DENGAN INT 21 ;

;==========================S’to=;

         .MODEL SMALL
         .CODE
         ORG 100h
Proses : 
         MOV  AH,02h   ; Nilai servis ntuk mencetak karakter
         MOV  DL,'A'   ; DL = Karakter ASCII yang akan dicetak
         INT  21h      ; Cetak karakter !!

         INT  20h      ; Selesai ! kembali ke DOS
END      Proses


         Program 7.1. Mencetak sebuah karakter


 Setelah program 7.1. anda ketik compile-lah dengan menggunakan TASM.EXE
dengan perintah :

   C:\>tasm a0
   Turbo Assembler  Version 2.0  Copyright (c) 1988, 1990
   Borland International

   Assembling file:   a0.ASM 
   Error messages:    None
   Warning messages:  None
   Passes:            1
   Remaining memory:  306k

   C:\>dir a0.*

   Volume in drive C is S’to
   Directory of C:\

   A0       ASM           506 08-14-94   3:56p
   A0       OBJ           179 08-14-94  11:24p
        2 file(s)            685 bytes
 26

                       1,267,200 bytes free


 Sampai disini sudah dihasilkan suatu file object dari KAL.ASM yang siap
dijadikan file COM(karena kita membuat file dengan format program COM). Untuk
itu lakukanlah langkah kedua, dengan perintah :

   C:\>tlink/t a0
   Turbo Link  Version 3.0 Copyright (c) 1987, 1990
   Borland International

   C:\>tlink/t a0
   Turbo Link  Version 3.0 Copyright (c) 1987, 1990
   Borland International

   C:\>dir a0.*

   Volume in drive C is S’to
   Directory of C:\

   A0       ASM           506 08-14-94   3:56p
   A0       OBJ           179 08-14-94  11:26p
   A0       MAP           229 08-14-94  11:26p
   A0       COM             8 08-14-94  11:26p
           4 file(s)            922 bytes
                          1,266,176 bytes free


  Setelah kedua proses itu selesai maka dihasilkanlah suatu program COM
yang sudah siap untuk dijalankan. File-file yang tidak digunakan bisa anda
hapus. Bila program 7.1.  dijalankan maka pada layar akan ditampilkan 


C:\>A0  
   A

 Kita lihat disini bahwa karakter yang tercetak adalah yang sesuai dengan
kode ASCII yang ada pada register DL. Sebagai latihan cobalah anda ubah
register DL dengan angka 65 yang merupakan kode ASCII karakter 'A'. Hasil yang
didapatkan adalah sama. 

Pelajarilah
 fungsi ini baik-baik, karena akan banyak kita gunakan pada
bab-bab selanjutnya.

7.2. MENCETAK KARAKTER BESERTA ATRIBUT

 Sebuah karakter disertai dengan warna tentunya akan lebih menarik. Untuk
itu anda bisa menggunakan  interupsi ke 10h dengan aturan pemakaiannya : 

   INPUT
      AH = 09h
      AL = Kode ASCII dari karakter yang akan dicetak
      BH = Nomor halaman(0 untuk halaman 1)
      BL = Atribut atau warna dari karakter yang akan dicetak             
      CX = Banyaknya karakter tersebut akan dicetak
 Setelah semua register dimasukkan nilainya maka lakukanlah interupsi
10h. Perlu anda perhatikan bahwa interupsi ini mencetak karakter tanpa
menggerakkan kursor.           
 27

        
;=================================;
;   PROGRAM : A1.ASM              ;
;   FUNGSI  : MENCETAK KARATER 'A';
;             BESERTA ATRIBUTNYA  ;
;             DENGAN INT 10h      ;
;============================S’to=;

         .MODEL SMALL
         .CODE
         ORG 100h
Proses : 
         MOV  AH,09h    ; Nilai servis untuk mencetak karakter
         MOV  AL,'A'    ; AL = Karakter yang akan dicetak
         MOV  BH,00h    ; Nomor Halaman layar
         MOV  BL,93h    ; Warna atau atribut dari karakter
         MOV  CX,03h    ; Banyaknya karakter yang ingin dicetak
         INT  10h       ; Laksanakan !!!

         INT  20h       ; Selesai ! kembali ke DOS
END      Proses

Program 7.2. Mencetak karakter beserta atributnya



 Bila program 7.2. dieksekusi maka akan ditampilkan huruf 'A' sebanyak 3
kali dengan warna dasar biru kedip dan warna tulisan Cyan(sesuai dengan nilai
register BL). Mengenai halaman layar dan atribut(warna) akan kita bahas lebih
lanjut pada bagian yang lain.
  B:\>A1
  AAA

 Anda bisa merubah-rubah register AL dan BL untuk merubah karakter dan
warna yang ingin dicetak. 

7.3. PENGULANGAN DENGAN LOOP

 Perintah LOOP digunakan untuk melakukan suatu proses yang berulang-
ulang. Adapun syntax dari perintah ini adalah :
    
LOOP Tujuan

Tujuan dapat berupa suatu label yang telah didefinisikan, contoh:
            MOV  CX,3     ; Banyaknya pengulangan yang dilakukan
    Ulang : INT  10h      ; Tempat terjadinya pengulangan
            LOOP Ulang    ; Lompat ke label 'Ulang'


 Pada proses pengulangan dengan perintah LOOP, register CX memegang suatu
peranan yang khusus dimana register ini dijadikan sebagai counter/penghitung
terhadap banyaknya looping yang boleh terjadi. Setiap ditemui perintah LOOP,
maka register CX akan dikurangi dengan 1 terlebih dahulu, kemudian akan
dilihat apakah CX sudah mencapai 0. Proses looping akan selesai bila nilai
 28

pada register CX mencapai nol. Seperti pada contoh diatas, maka interupsi 10h
akan dihasilkan sebanyak 3 kali(sesuai dengan nilai CX). 
 Perlu diperhatikan bahwa jangan sampai anda menaruh CX kedalam proses
LOOP karena hal ini akan menyebabkan nilai CX diSET terus sehingga proses
looping tidak bisa berhenti.
TRICK:

 Bila anda menetapkan nilai CX menjadi nol pada saat pertama kali sebelum
dilakukan loop, maka anda akan mendapatkan proses looping yang terbanyak. Hal
ini dikarenakan proses pengurangan 0 dengan 1 akan menghasilkan nilai FFFFh(-
1), Contoh :
       MOV  CX,00
Ulang: LOOP Ulang 
  

7.4. MENCETAK BEBERAPA KARAKTER

 Untuk mencetak beberapa karakter, bisa anda gunakan proses looping.
Sebagai contoh dari penggunaan looping ini bisa dilihat pada program 7.3.

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
;   PROGRAM : ABC0.ASM          ;
;   FUNGSI  : MENCETAK 16 BUAH  ;
;             KARAKTER  DENGAN  ;
;             INT 21h SERVIS 02 ;
;==========================S’to=;

         .MODEL SMALL
         .CODE
         ORG 100h
Proses : 
         MOV  AH,02h   ; Nilai servis
         MOV  DL,'A'   ; DL=karakter 'A' atau DL=41h
         MOV  CX,10h   ; Banyaknya pengulangan yang akan 
 Ulang : 
         INT  21h      ; Cetak karakter !!
         INC  DL       ; Tambah DL dengan 1
         LOOP Ulang    ; Lompat ke Ulang

         INT  20h
END      Proses

Program 7.3. Pengulangan dengan perintah LOOP




 Bila program 7.3. dijalankan maka akan ditampilkan :

       
ABCDEFGHIJKLMNOP