Senin, 10 Oktober 2011

Bahasa Mesin Komputer

Kode mesin atau bahasa mesin adalah sistem instruksi dan data yang dijalankan langsung oleh komputer central processing unit. Kode mesin dapat dianggap sebagai primitif (dan rumit) atau sebagai bahasa pemrograman tingkat terendah representasi dari disusun dan / atau program komputer rakitan. Program dalam menafsirkan bahasa  tidak diwakili oleh kode mesin tetapi, walaupun penerjemah mereka (yang dapat dilihat sebagai sebuah prosesor melaksanakan program tingkat yang lebih tinggi) sering terjadi. Kode mesin kadang-kadang disebut kode asli ketika mengacu pada platform-bagian dari bahasa tergantung fitur atau perpustakaan. kode Mesin tidak boleh disamakan dengan apa yang disebut “bytecode”, yang dilaksanakan oleh seorang juru bahasa.
Kode Mesin Instruksi
Setiap prosesor atau keluarga prosesor memiliki set instruksi kode mesin. Instruksi pola bit yang oleh desain fisik sesuai dengan perintah yang berbeda ke mesin. Set instruksi demikian khusus untuk kelas prosesor menggunakan (banyak) arsitektur yang sama. Penerus atau derivatif desain prosesor sering mencakup semua instruksi dari pendahulunya dan dapat menambah petunjuk tambahan. Kadang-kadang desain pengganti akan menghentikan atau mengubah arti dari beberapa kode instruksi (biasanya karena dibutuhkan untuk keperluan baru), kode yang mempengaruhi kompatibilitas sampai batas tertentu, bahkan hampir sepenuhnya kompatibel dengan prosesor mungkin akan menampilkan perilaku yang sedikit berbeda untuk beberapa instruksi tetapi ini jarang yang masalah. Sistem mungkin juga berbeda dalam rincian lainnya, seperti pengaturan memori, sistem operasi, atau perangkat periferal; karena biasanya program bergantung pada faktor-faktor seperti, sistem yang berbeda akan biasanya tidak menjalankan kode mesin yang sama, bahkan ketika jenis prosesor yang sama digunakan.
Sebuah set instruksi kode mesin mungkin memiliki semua instruksi yang sama panjang, atau hal itu mungkin karena panjang variabel-instruksi. Bagaimana pola diorganisir sangat bervariasi dengan arsitektur tertentu dan sering juga dengan jenis instruksi. Sebagian besar instruksi memiliki satu atau lebih opcode bidang yang menentukan jenis instruksi dasar (seperti aritmatika, logis, melompat, dll) dan operasi sebenarnya (seperti menambah atau membandingkan) dan bidang lain yang mungkin memberikan jenis operand (s) , mode pengalamatan (s), pengalamatan offset (s) atau indeks, atau nilai aktual itu sendiri (Operand konstan seperti yang terdapat dalam sebuah instruksi disebut immediates).
Program
Sebuah program komputer adalah suatu urutan instruksi yang dijalankan oleh CPU. Sementara prosesor mengeksekusi instruksi sederhana satu demi satu, prosesor superscalar mampu menjalankan beberapa instruksi sekaligus. Program aliran mungkin dipengaruhi oleh khusus ‘melompat’ instruksi yang mentransfer eksekusi ke instruksi lain dari yang di bawah satu. Lompatan bersyarat diambil (eksekusi berlanjut pada alamat lain) atau tidak (eksekusi berlanjut pada instruksi berikutnya) tergantung pada beberapa kondisi.
Bahasa Assembly
Yang jauh lebih mudah dibaca rendition of bahasa mesin, disebut bahasa assembly, menggunakan kode mnemonic untuk merujuk pada instruksi kode mesin, bukan hanya menggunakan instruksi “nilai numerik. Sebagai contoh, pada prosesor Zilog Z80, kode mesin 00.000.101, yang menyebabkan CPU untuk pengurangan prosesor B mendaftar, akan diwakili dalam bahasa assembly sebagai Desember B.
Contoh
Arsitektur MIPS memberikan contoh khusus untuk instruksi kode mesin yang selalu 32 bit panjang. Jenis umum instruksi yang diberikan oleh op (operasi) bidang, 6 bit tertinggi. J-jenis (melompat) dan I-jenis (langsung) instruksi sepenuhnya ditentukan oleh op. R-type (pendaftaran) instruksi meliputi bidang tambahan Fungsi untuk menentukan operasi yang tepat. Kolom yang digunakan dalam tipe ini adalah:

rs, rt, dan rd menunjukkan daftar Operand; shamt memberikan jumlah pergeseran dan alamat atau lapangan langsung berisi operand langsung.
Misalnya menambahkan register 1 dan 2 dan menempatkan hasilnya dalam register 6 dikodekan:
Memanggil sebuah nilai ke dalam register 8, diambil dari memori sel sel setelah lokasi 68 yang tercantum dalam register 3:

Melompat ke alamat 1024

Hubungan terfokus
Dalam beberapa arsitektur komputer, kode mesin ini diterapkan oleh lapisan yang lebih mendasar dari program yang disebut microprograms, menyediakan antarmuka bahasa mesin Common melintasi sebuah garis atau keluarga model yang berbeda dengan komputer yang mendasari dataflows sangat berbeda. Hal ini dilakukan untuk memfasilitasi port dari program bahasa mesin antara model yang berbeda. Contoh dari penggunaan ini adalah IBM System/360 komputer keluarga dan para penerus mereka. Dengan jalan dataflow lebar dari 8 bit dengan 64 bit dan seterusnya, mereka tetap menyajikan sebuah arsitektur umum pada tingkat bahasa mesin di seluruh baris.
Menggunakan lapisan terfokus untuk menerapkan sebuah emulator memungkinkan komputer untuk menyajikan arsitektur komputer yang sama sekali berbeda. Baris System/360 ini digunakan untuk mengizinkan program port dari mesin IBM sebelumnya untuk keluarga baru komputer, misalnya IBM 1401/1440/1460 emulator pada IBM S/360 model 40.

Dasar Program Assembly

Bahasa Assembly adalah bahasa komputer yang kedudukannya di antara bahasa mesin dan bahasa level tinggi misalnya bahasa C atau Pascal. Bahasa C atau Pascal dikatakan sebagai bahasa level tinggi karena memakai kata-kata dan pernyataan yang mudah dimengerti manusia, meskipun masih jauh berbeda dengan bahasa manusia sesungguhnya. Bahasa mesin adalah kumpulan kode biner yang merupakan instruksi yang bisa dijalankan oleh komputer. Sedangkan bahasa Assembly memakai kode Mnemonic untuk menggantikan kode biner, agar lebih mudah diingat sehingga lebih memudahkan penulisan program.
Program yang ditulis dengan bahasa Assembly terdiri dari label; kode mnemonic dan lain sebagainya, pada umumnya dinamakan sebagai program sumber (Source Code) yang belum bisa diterima oleh prosesor untuk dijalankan sebagai program, tapi harus diterjemahkan dulu menjadi bahasa mesin dalam bentuk kode biner.
Program sumber dibuat dengan program editor biasa, misalnya Notepad pada Windows atau SideKick pada DOS, selanjutnya program sumber diterjemahkan ke bahasa mesin dengan menggunakan program Assembler. Hasil kerja program Assembler adalah “program objek” dan juga “assembly listing”.
Program Objek berisikan kode kode bahasa mesin, kode-kode bahasa mesin inilah yang diumpankan ke memori-program prosesor. Dalam dunia mikrokontroler biasanya program objek ini diisikan ke UV EPROM, dan khusus untuk mikrokontroler buatan Atmel, program ini diisikan ke dalam Flash PEROM yang ada di dalam chip AT89C51 atau AT89C2051.
Assembly Listing merupakan naskah yang berasal dari program sumber, dalam naskah tersebut pada bagian sebelah setiap baris dari program sumber diberi tambahan hasil terjemahan program Assembler. Tambahan tersebut berupa nomor memori-program berikut dengan kode yang akan diisikan pada memori-program bersangkutan. Naskah ini sangat berguna untuk dokumentasi dan sarana untuk menelusuri program yang ditulis.
Yang perlu diperhatikan adalah setiap prosesor mempunyai konstruksi yang berlainan, instruksi untuk mengendalikan masing-masing prosesor juga berlainan, dengan demikian bahasa Assembly untuk masing-masing prosesor juga berlainan, yang sama hanyalah pola dasar cara penulisan program Assembly saja.


Gambar 7
Proses Assembly
Konstruksi Program Assembly
Program sumber dalam bahasa Assembly menganut prinsip 1 baris untuk satu perintah, setiap baris perintah tersebut bisa terdiri atas beberapa bagian (field), yakni bagian Label, bagian mnemonic, bagian operand yang bisa lebih dari satu dan terakhir bagian komentar. Untuk membedakan masing-masing bagian tersebut dibuat ketentuan sebagian berikut:
o Masing-masing bagian dipisahkan dengan spasi atau TAB, khusus untuk operand yang lebih dari satu masing-masing operand dipisahkan dengan koma.
o Bagian-bagian tersebut tidak harus semuanya ada dalam sebuah baris, jika ada satu bagian yang tidak ada maka spasi atau TAB sebagai pemisah bagian tetap harus ditulis.
· Bagian Label ditulis mulai huruf pertama dari baris, jika baris bersangkutan tidak mengandung Label maka label tersebut digantikan dengan spasi atau TAB, yakni sebagai tanda pemisah antara bagian Label dan bagian mnemonic.
Label mewakili nomor memori-program dari instruksi pada baris bersangkutan, pada saat menulis instruksi JUMP, Label ini ditulis dalam bagian operand untuk menyatakan nomor memori-program yang dituju. Dengan demikian Label selalu mewakili nomor memori-program dan harus ditulis dibagian awal baris instruksi.
Disamping Label dikenal pula Symbol, yakni satu nama untuk mewakili satu nilai tertentu dan nilai yang diwakili bisa apa saja tidak harus nomor memori-program. Cara penulisan Symbol sama dengan cara penulisan Label, harus dimulai di huruf pertama dari baris instruksi.
Mnemonic (arttinya sesuatu yang memudahkan diingat) merupakan singkatan perintah, dikenal dua macam mnemonic, yakni manemonic yang dipakai sebagai instruksi mengendalikan prosesor, misalnya ADD, MOV, DJNZ dan lain sebagainya. Ada pula mnemonic yang dipakai untuk mengatur kerja dari program Assembler misalnya ORG, EQU atau DB, mnemonis untuk mengatur kerja dari program Assembler ini dinamakan sebagai ‘Assembler Directive’.
Operand adalah bagian yang letaknya di belakang bagian mnemonic, merupakan pelangkap bagi mnemonic. Kalau sebuah instrksi di-ibaratkan sebagai kalimat perintah, maka mnemonic merupakan subjek (kata kerja) dan operand merupakan objek (kata benda) dari kalimat perintah tersebut.
Tergantung pada jenis instruksinya, operand bisa berupa berbagai macam hal. Pada instruksi JUMP operand berupa Label yang mewakili nomor memori-program yang dituju misalnya LJMP Start, pada instruksi untuk pemindahan/pengolahan data, operand bisa berupa Symbol yang mewakili data tersebut, misalnya ADD A,#Offset. Banyak instruksi yang operandnya adalah register dari prosesor, misalnya MOV A,R1. Bahkan ada pula instruksi yang tidak mempunyai operand, misalnya RET.
Komentar merupakan bagian yang sekedar sebagai catatan, tidak berpengaruh pada prosesor juga tidak berpengaruh pada kerja program Assembler, tapi bagian ini sangat penting untuk keperluan dokumentasi.
Assembler Directive
Seperti sudah dibahas di atas, bagian Mnemonic dari sebuah baris perintah bisa merupakan instruksi untuk prosesor, maupun berupa Assembler Directive untuk mengatur kerja dari program Assembler. Mnemonic untuk instruksi prosesor, sangat tergantung pada prosesor yang dipakai, sedangkan mnemonic untuk Assembler Directive tergantung pada program Assembler yang dipakai. Meskipun demikian, terdapat beberapa Assembler Directive yang umum, yang sama untuk banyak macam program Assembler.
Assembler Directive yang bersifat umum tersebut, antara lain adalah
o ORG – singkatan dari ORIGIN, untuk menyatakan nomor memori yang dipakai setelah perintah itu, misalnya ORG $1000 maka memori berikutnya yang dipakai Assembler adalah $1000. ORG berlaku untuk memori program maupun memori-data. Dalam hal penomoran memori, dikenal tanda $ sebagai awalan untuk menyatakan nomor memori dari baris bersangkutan. Misalnya :
ORG 1000
LJMP $+1000
Operand $+$500 mempunyai arti nomor memori-program bersangkutan ditambah dengan $500, karena instruksi LJMP ini terletak persis di bawah ORG $1000 maka nomor memori-program baris ini adalah $1000, sehingga operand $+$500 bernilai $1500 dan instruksi ini indentik dengan LJMP $1500
o EQU – singkatan dari EQUATE, dipakai untuk menentukan nilai sebuah Symbol.
Misalnya Angka88 EQU 88 memberi nilai 88 pada Symbol Angka88, atau CR EQU $0D mempunyai makna kode ASCII dari CR (Caarriage Return) adalah $08.
o DB – singkatan dari DEFINE BYTE, dipakai untuk memberi nilai tertentu pada memori-program. Nilai tersebut merupakan nilai 1 byte, bisa berupa angka ataupun kode ASCII. DB merupakan Assembler Directive yang dipakai untuk membentuk teks maupun tabel.
ORG $0200
STRING DB ‘Atmel AT89C2051’
PANJANG EQU $-STRING
o ORG $0200 memerintahkan program Assembler agar bekerja mulai dari memori-program nomor $0200, instruksi selanjutnya memerintahkan program Assembler agar mengisi memori-program nomor $0200 dan berikutnya dengan tulisan ‘Atmel AT89C2051’’ (yang diisikan adalah kode ASCII dari ‘A’, ‘t’ dan seterusnya), PANJANG dari STRING bisa dihitung dengan cara PANJANG EQU $-STRING, yakni selisih dari nomor memori-program baris bersangkutan dikurangi dengan nomor awal memori-program yang diisi STRING.
o DW – singkatan dari DEFINE WORD, dipakai untuk memberi nilai 2 byte ke memori-program pada baris bersangkutan. Assembler Directive ini biasa dipakai untuk membentuk suatu tabel yang isinya adalah nomor-nomor memori-program.
o DS – singkatan dari Define Storage, Assembler Directive ini dipakai untuk membentuk variable. Sebagai variabel tentu saja memori yang dipakai adalah memori-data (RAM) bukan memori-program (ROM). Hal ini harus benar-benar dibedakan dengan Assembler Directive DB dan DW yang membentuk kode di memori-program. Dan karena DS bekerja di RAM, maka DS hanya sekedar menyediakan tempat di memori, tapi tidak mengisi nilai pada memori bersangkutan.
Perintah-Perintah Command Prompt Pada Windows XP

Untuk informasi lebih spesifik tentang suatu perintah, ketik “HELP nama-perintah” di DOS prompt
ASSOC Menampilkan atau mengubah asosiasi ekstensi file.
AT Menjadwalkan perintah dan program agar berjalan di komputer.
ATTRIB Menampilkan atau mengubah atribut file.
BREAK Mengeset atau menghilangkan pengecekan extended CTRL+C.
CACLS Menampilkan atau mengubah access control lists (ACLs) dai files.
CALL Memanggil sebuah program batch dari program batch yang lain.
CD Menampilkan nama atau mengubah direktori sekarang.
CHCP Menampilkan atau mengubah active code page number.
CHDIR Menampilkan nama atau mengubah direktori sekarang.
CHKDSK Memeriksa sebuah disket/harddisk dan menampilkan laporan status..
CHKNTFS Menampilkan atau mengubah pemeriksaan disket pada saat booting.
CLS Menghapus layar..
CMD Menjalankan interpreter command Windows yang baru.
COLOR Mengubah warna foreground dan background pada command prompt.
COMP Membandingkan isi dari dua atau beberapa file.
COMPACT Menampilkan atau mengubah kompresi file pada partisi NTFS.
CONVERT Mengkonversi FAT ke NTFS. Anda tidak dapat mengkonversi drive yang sedang aktif.
COPY Menyalin satu atau beberapa file ke lokasi lain.
DATE Menampilkan atau mengubah tanggal.
DEL Menghapus satu atau beberapa file.
DIR Menampilkan daftar file dan subdirektori dalam sebuah direktori.
DISKCOMP Membandingkan isi dari dua buah disket.
DISKCOPY Menyalin isi dari satu disket ke disket lain.
DOSKEY Mngedit baris perintah, memanggil kembali perintah Windows, dan membuat macro.
ECHO Menampilkan pesan, atau mengubah command echoing on atau off.
ENDLOCAL Mengakhiri localization dari environment changes in a batch file.
ERASE Menghapus satu atau beberapa fie.
EXIT Keluar dari program CMD.EXE.
FC Membandingkan 2 atau beberapa file, dan Menampilkan perbedaan file-file tersebut.
FIND Mencari string teks dalam sebuah file atau beberapa file.
FINDSTR Mencari string dalam file.
FOR Menjalankan perintah yang spesifik untuk masing-masing file dalam sekumpulan file.
FORMAT Mem-Formats sebuah hardisk/disket untuk digunakan dalam Windows.
FTYPE Menampilkan atau mengubah tipe file yang digunakan dalam asosiasi ekstensi file.
GOTO Mengarahkan Windows command interpreter ke baris yang berlabel dalam sebuah program batch.
GRAFTABL Membolehkan Windows untuk menampilkan sekumpulan karakter extended dalam mode grafik.
HELP Menyediakan informasi Help untuk perintah-perintah Windows.
IF Menjalankan proses kondisi dalam program batch.
LABEL Membuat, mengubah, atau menghapus volume label dari sebuah disket/harddisk.
MD Membuat direktori.
MKDIR Membuat direktori.
MODE Mengkonfigurasi system device.
MORE Menampilkan hasil perlayar..
MOVE Memindahkan satu atau beberapa file dari satu direktori ke direktori yang lain.
PATH Menampilkan ata mengeset search path untuk executable files.
PAUSE Menunda pemrosesan dari sebuah batch file dan Menampilkan pesan.
POPD Mengembalikan nilai sebelumnya dari direktori sekarang yang disimpan oleh PUSH.
PRINT Mencetak file teks.
PROMPT Mengubah command prompt Windows.
PUSHD Menyimpan direktori sekarang kemudian mengubahnya.
RD Menghapus direktori.
RECOVER Mengembalikan informasi yang masih dapat dibaca dari sebuah disket/harddisk yang sudah bad/rusak.
REM Merekam kemontar dalam batch files atau CONFIG.SYS.
REN Mengubah nama file.
RENAME Mengubah nama file.
REPLACE Menggantikan file.
RMDIR Menghapus direktori.
SET Menampilkan, mengatur, atau menghapus Windows environment variables.
SETLOCAL Memulai localization dari environment changes dalam sebuah batch file.
SHIFT Menggeser posisi parameters yang replacable dalam batch files.
SORT Mensortir input.
START Memulai jendela terpisah untuk menjalankan perintah atau program spesifik.
SUBST Meng-asosiasikan sebuah path dengan drive letter.
TIME Menampilkan atau mengatur waktu sistem.
TITLE Mengatur judul jendela untuk sesi CMD.EXE.
TREE Menampilkan secara grafis struktur direktori dari sebuah drivve atau path.
TYPE Menampilkan isi dari sebuah file eks.
VER Menampilkan versi windows.
VERIFY memberitahu Windows untuk mem-verifikasi file anda telah disimpan secara benar dalam harddisk/disket.
VOL Menampilkan nomor serial dan volume label dari sebuah harddisk/disket
XCOPY Menyalin file dan pohon direktori.

Mengenal Bahasa Pemrograman Java

Sejarah Java
Java dipelopori oleh James Gosling, Patrick Naughton, Chris Warth, Ed Frank, dan Mike Sheridan dari Sun Microsystems, Inc pada tahun 1991. Mereka membutuhkan kurang lebih 18 bulan untuk membuat versi pertamanya. Bahasa ini pada awalnya disebut “Oak” tapi kemudian diubah menjadi “Java” pada tahun 1995 karena nama Oak telah dijadikan hak cipta dan digunakan sebagai bahasa pemrograman lainnya. Antara pembuatan Oak pada musim gugur 1992 hingga diumumkan ke publik pada musim semi 1995, banyak orang yang terlibat dalam desain dan evolusi bahasa ini. Bill Joy, Arthur van Hoff, Jonathan Payne, Frank Yellin, dan Tim Lindholm merupakan kontributor kunci yang mematangkan prototipe aslinya.
Java Modern
Java telah digunakan dalam banyak hal dan telah membuktikan keberadaannya pada abad ke 21. Saat ini, Java digunakan bermacam jenis aplikasi seperti aplikasi embedded, aplikasi keuangan, desktop, simulasi pesawat, pemrosesan citra, game, aplikasi perusahaan terdistribusi yang disebut J2EE dan masih banyak lagi.
Java Virtual Machine (JVM)
Java Virtual Machine merupakan aplikasi sederhana yang ditulis dalam bahasa C untuk mengeksi program yang ditulis dalam bahasa Java. Pada saat kompilasi (perubahan dari bahasa tingkat tinggi ke bahasa lebih rendah), program tersebut diubah menjadi KODE BYTE. Kemudian pada saat eksekusi, JVM membaca kode byte tersebu dan mengubahnya menjadi bahasa mesin yang dimengerti oleh sistem operasi tempat program tersebut dijalankan.
Karena JVM sangat bergantung pada platformnya (bahasa mesin merupakan bahasa level rendah yang hanya dimengerti oleh suatu mesin tertentu, misalnya Intel, tapi tidak dapat dimengerti oleh mesin lain, seperti Macintosh), byte code ini dapat dibuat untuk terbebas dari kungkungan platform tertentu. Code byte yang dihasilkan dalam proses kompilasi bahasa Java akan selalu sama untuk setiap sistem operasi atau jenis mesinnya, tetapi JVM akan mengubah kode byte tersebut menjadi bahasa mesin tujuannya.
Just In Time Compiler (JIT)
Meskipun Java didesain untuk diinterpretasi, secara teknis tidak ada yang menghalangi Java untuk dikompilasi menjadi bahasa mesin seperti bahasa-bahasa pemrograman lainnya. Sun menyediakan kompiler Just In Time Compiler (JIT) untuk mengkompilasi kode byte itu menjadi bahasa mesinnya pada saat yang bersamaan dengan eksekusinya. Walaupun demikian, pendekatan JIT ini menghasilkan kemampuan yang lebih dibandingkan dengan interpretasi biasa.

 

Macam-macam topologi jaringan pada komputer

Topolgoi Bus

bus 
bus
Pada topologi Bus, kedua unjung jaringan harus diakhiri dengan sebuah terminator. Barel connector dapat digunakan untuk memperluasnya. Jaringan hanya terdiri dari satu saluran kabel yang menggunakan kabel BNC. Komputer yang ingin terhubung ke jaringan dapat mengkaitkan dirinya dengan mentap Ethernetnya sepanjang kabel. Linear Bus: Layout ini termasuk layout yang umum. Satu kabel utama menghubungkan tiap simpul, ke saluran tunggal komputer yang mengaksesnya ujung dengan ujung. Masing-masing simpul dihubungkan ke dua simpul lainnya, kecuali mesin di salah satu ujung kabel, yang masing-masing hanya terhubung ke satu simpul lainnya. Topologi ini seringkali dijumpai pada sistem client/server, dimana salah satu mesin pada jaringan tersebut difungsikan sebagai File Server, yang berarti bahwa mesin tersebut dikhususkan hanya untuk pendistribusian data dan biasanya tidak digunakan untuk pemrosesan informasi. Instalasi jaringan Bus sangat sederhana, murah dan maksimal terdiri atas 5-7 komputer. Kesulitan yang sering dihadapi adalah kemungkinan terjadinya tabrakan data karena mekanisme jaringan relatif sederhana dan jika salah satu node putus maka akan mengganggu kinerja dan trafik seluruh jaringan.
* Keunggulan topologi Bus adalah pengembangan jaringan atau penambahan workstation baru dapat dilakukan dengan mudah tanpa mengganggu workstation lain. Kelemahan dari topologi ini adalah bila terdapat gangguan di sepanjang kabel pusat maka keseluruhan jaringan akan mengalami gangguan.
Topologi linear bus merupakan topologi yang banyak dipergunakan pada masa penggunaan kabel Coaxial menjamur. Dengan menggunakan T-Connector (dengan terminator 50ohm pada ujung network), maka komputer atau perangkat jaringan lainnya bisa dengan mudah dihubungkan satu sama lain. Kesulitan utama dari penggunaan kabel coaxial adalah sulit untuk mengukur apakah kabel coaxial yang dipergunakan benar-benar matching atau tidak. Karena kalau tidak sungguh-sungguh diukur secara benar akan merusak NIC (network interface card) yang dipergunakan dan kinerja jaringan menjadi terhambat, tidak mencapai kemampuan maksimalnya. Topologi ini juga sering digunakan pada jaringan dengan basis fiber optic (yang kemudian digabungkan dengan topologi star untuk menghubungkan dengan client atau node.).


Topologi Star/Bintang


star 
star
Topologi bintang merupakan bentuk topologi jaringan yang berupa konvergensi dari node tengah ke setiap node atau pengguna. Topologi jaringan bintang termasuk topologi jaringan dengan biaya menengah.
Kelebihan
* Kerusakan pada satu saluran hanya akan mempengaruhi jaringan pada saluran tersebut dan station yang terpaut.
* Tingkat keamanan termasuk tinggi.
* Tahan terhadap lalu lintas jaringan yang sibuk.
* Penambahan dan pengurangan station dapat dilakukan dengan mudah.
Kekurangan
* Jika node tengah mengalami kerusakan, maka seluruh jaringan akan terhenti.
Sumber :http://id.wikipedia.org/wiki/Topologi_bintang

Topologi Ring/Cincin


ring 
ring
Topologi cincin adalah topologi jaringan dimana setiap titik terkoneksi ke dua titik lainnya, membentuk jalur melingkar membentuk cincin. Pada topologi cincin, komunikasi data dapat terganggu jika satu titik mengalami gangguan. Jaringan FDDI mengantisipasi kelemahan ini dengan mengirim data searah jarum jam dan berlawanan dengan arah jarum jam secara bersamaan.
Sumber :http://id.wikipedia.org/wiki/Topologi_cincin

Topologi Mesh


mesh 
mesh
Topologi jaringan ini menerapkan hubungan antar sentral secara penuh. Jumlah saluran harus disediakan untuk membentuk jaringan Mesh adalah jumlah sentral dikurangi 1 (n-1, n = jumlah sentral). Tingkat kerumitan jaringan sebanding dengan meningkatnya jumlah sentral yang terpasang. Dengan demikian disamping kurang ekonomis juga relatif mahal dalam pengoperasiannya.
Sumber : http://id.wikipedia.org/wiki/Topologi_mesh

Topologi Tree


tree 
tree
Topologi Jaringan Pohon (Tree) Topologi jaringan ini disebut juga sebagai topologi jaringan bertingkat. Topologi ini biasanya digunakan untuk interkoneksi antar sentral denganhirarki yang berbeda. Untuk hirarki yang lebih rendah digambarkan pada lokasi yang rendah dan semakin keatas mempunyai hirarki semakin tinggi. Topologi jaringan jenis ini cocok digunakan pada sistem jaringan komputer .
Pada jaringan pohon, terdapat beberapa tingkatan simpul (node). Pusat atau simpul yang lebih tinggi tingkatannya, dapat mengatur simpul lain yang lebih rendah tingkatannya. Data yang dikirim perlu melalui simpul pusat terlebih dahulu. Misalnya untuk bergerak dari komputer dengan node-3 kekomputer node-7 seperti halnya pada gambar, data yang ada harus melewati node-3, 5 dan node-6 sebelum berakhir pada node-7. Keungguluan jaringan model pohon seperti ini adalah, dapat terbentuknya suatu kelompok yang dibutuhkan pada setiap saat. Sebagai contoh, perusahaan dapat membentuk kelompok yang terdiri atas terminal pembukuan, serta pada kelompok lain dibentuk untuk terminal penjualan. Adapun kelemahannya adalah, apabila simpul yang lebih tinggi kemudian tidak berfungsi, maka kelompok lainnya yang berada dibawahnya akhirnya juga menjadi tidak efektif. Cara kerja jaringan pohon ini relatif menjadi lambat.
Sumber : http://id.wikipedia.org/wiki/Topologi_pohon

Topologi Linier


linier 
linier
Jaringan komputer dengan topologi linier biasa disebut dengan topologi linier bus, layout ini termasuk layout umum. Satu kabel utama menghubungkan tiap titik koneksi (komputer) yang dihubungkan dengan konektor yang disebut dengan T Connector dan pada ujungnya harus diakhiri dengan sebuah terminator. Konektor yang digunakan bertipe BNC (British Naval Connector), sebenarnya BNC adalah nama konektor bukan nama kabelnya, kabel yang digunakan adalah RG 58 (Kabel Coaxial Thinnet). Installasi dari topologi linier bus ini sangat sederhana dan murah tetapi maksimal terdiri dari 5-7 Komputer.
Tipe konektornya terdiri dari
1. BNC Kabel konektor —> Untuk menghubungkan kabel ke T konektor.
2. BNC T konektor —> Untuk menghubungkan kabel ke komputer.
3. BNC Barrel konektor —> Untuk menyambung 2 kabel BNC.
4. BNC Terminator —> Untuk menandai akhir dari topologi bus.
Keuntungan dan kerugian dari jaringan komputer dengan topologi linier bus adalah :
* Keuntungan, hemat kabel, layout kabel sederhana, mudah dikembangkan, tidak butuh kendali pusat, dan penambahan maupun pengurangan terminal dapat dilakukan tanpa mengganggu operasi yang berjalan.
* Kerugian, deteksi dan isolasi kesalahan sangat kecil, kepadatan lalu lintas tinggi, keamanan data kurang terjamin, kecepatan akan menurun bila jumlah pemakai bertambah, dan diperlukan Repeater untuk jarak jauh.

PERBEDAAN vb 06 DENGAN vb 2008

Setiap generasi baru dari perangkat lunak bahasa pemerograman datang karena adanya keterbatasan dari generasi sebelumnya. Teknologi device, hardware, network dan internet baru yang muncul, menyebabkan bahasa pemerograman yang ada tidak lagi menjadi alat yang ideal untuk mengembangkan perangkat lunak yang dapat bekerja dengan teknologi baru tersebut.

Sekarang untuk pertama kalinya, platform pengembangan perangkat lunak yang lengkap, Microsoft .NET telah didesain dari dasar dengan Internet sebagai fokus utamanya (Walaupun tidak secara eksklusif hanya untuk pengembangan Internet saja). Banyak inovasi baru yang berada dalam platform ini akan mengatasi keterbatasan dari tool-tool dan teknologi lama.

Keterbatasan VB6, dalam pengembangan aplikasi menggunakan dua model yaitu VB Client berbasis form dan COM (Component Object Model). Sedangkan untuk Client dan Server digunakan DCOM (Distributed COM). Sayangnya VB6 memiliki keterbatasan seperti:

1. Masalah Deployment/Penyebaran
2. Kekurangan Interoperability dengan Platform lainnya
3. Kekurangan dalam OOP
4. Keterbatasan dalam Pengembangan Internet
5. Windows API yang Merugikan
6. Kekurangan dalam penerapan Multithreading (Contohnya tidak dapat digunakan untuk menulis services Type NT)

1.1  Mengenal Visual Basic (VB)

Visual Basic adalah salah satu bahasa pemrograman komputer. Bahasa pemrograman adalah perintahperintah yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Bahasa pemrograman Visual Basic, yang dikembangkan oleh Microsoft sejak tahun 1991, merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Beginner’s All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Visual Basic merupakan salah satu Development Tool yaitu alat bantu untuk membuat berbagai macam program komputer, khususnya yang menggunakan sistem operasi Windows. Visual Basic merupakan salah satu bahasa pemrograman komputer yang mendukung object (Object Oriented Programming = OOP).

1.2  Mengenal Integrated Development Environment (IDE) VB 6

Aktifkan VB 6 melalui tombol Start > Programs > Microsoft Visual Studio 6.0 > Microsoft VB 6.0
􀁘 Menubar
􀁙 Toolbar
􀁚 Toolbox
Bila Toolbox tidak muncul klik tombol Toolbox ( ) pada bagian Toolbar atau klik menu
View > Toolbox.
􀁛 Jendela Form
Bila Jendela Form tidak muncul klik tombol View Object ( ) pada bagian Project Explorer atau
klik menu View > Object.
􀁜 Jendela Code
Bila Jendela Code tidak muncul klik tombol View Code ( ) di pada bagian Project Explorer atau
klik menu View > Code.
􀁝 Project Explorer
Bila Project Explorer tidak muncul klik tombol Project Explorer ( ) pada bagian
Toolbar atau klik menu View > Project Explorer.
􀁞 Jendela Properties
Bila Jendela Properties tidak muncul klik tombol Properties Window ( ) pada bagian Toolbar
atau klik menu View > Properties Window.

1.3 Memahami Istilah Object, Property, Method dan Event
Dalam pemrograman berbasis obyek (OOP), anda perlu memahami istilah object, property, method dan event sebagai berikut :
Object : komponen di dalam sebuah program
Property : karakteristik yang dimiliki object
Method : aksi yang dapat dilakukan oleh object
Event : kejadian yang dapat dialami oleh object
Object : Mobil
Property :
 Merek: Toyota, Type: sedan Warna: merah
Method :
Maju,Mundur,Berhenti
Event :
Pintu dibuka, Ditabrak, Didorong
Object : Form
Property :
BackColor, BorderStyle, Caption
Method :
Hide,Move,Show
Event :
Click, Load, Resize
1.1  Mengenal Data dan Variabel

Ketika seorang user (pengguna) menggunakan sebuah program komputer, seringkali komputer
memintanya untuk memberikan informasi. Informasi ini kemudian disimpan atau diolah oleh komputer.Informasi inilah yang disebut dengan DATA.
Visual Basic 6 mengenal beberapa type data, antara lain :
􀂃 String adalah type data untuk teks (huruf, angka dan tanda baca).
􀂃 Integer adalah type data untuk angka bulat.
􀂃 Single adalah type data untuk angka pecahan.
􀂃 Currency adalah type data untuk angka mata uang.
􀂃 Date adalah type data untuk tanggal dan jam.
􀂃 Boolean adalah type data yang bernilai TRUE atau FALSE.

Data yang disimpan di dalam memory komputer membutuhkan sebuah wadah. Wadah inilah yang
disebut dengan VARIABEL. Setiap variabel untuk menyimpan data dengan type tertentu membutuhkan
alokasi jumlah memory (byte) yang berbeda.
Variabel dibuat melalui penulisan deklarasi variabel di dalam kode program :
Dim <nama_variabel> As <type_data>
Contoh : Dim nama_user As String

Aturan di dalam penamaan variabel :
􀂃 Harus diawali dengan huruf.
􀂃 Tidak boleh menggunakan spasi. Spasi bisa diganti dengan karakter underscore (_).
􀂃 Tidak boleh menggunakan karakter-karakter khusus (seperti : +, -, *, /, <, >, dll).
􀂃 Tidak boleh menggunakan kata-kata kunci yang sudah dikenal oleh VB(seperti : dim, as,string, integer, dll).Sebuah variabel hanya dapat menyimpan satu nilai data sesuai dengan type datanya.
Cara mengisi nilai data ke dalam sebuah variabel :
<nama_variabel> = <nilai_data>
Contoh : nama_user = “krisna”
Untuk type data tertentu nilai_data harus diapit tanda pembatas. Type data string dibatasi tanda petikganda : “nilai_data”. Type data date dibatasi tanda pagar : #nilai_data#. Type data lainnya tidak perlu tanda pembatas.
Sebuah variabel mempunyai ruang-lingkup (scope) dan waktu-hidup (lifetime) :
􀂃 Variabel global adalah variabel yang dapat dikenali oleh seluruh bagian program. Nilai data yang
tersimpan didalamnya akan hidup terus selama program berjalan.
􀂃 Variabel lokal adalah variabel yang hanya dikenali oleh satu bagian program saja. Nilai data yang
tersimpan didalamnya hanya hidup selama bagian program tersebut dijalankan.
Variabel yang nilai datanya bersifat tetap dan tidak bisa diubah disebut KONSTANTA. Penulisan
deklarasi konstanta di dalam kode program :
Const <nama_kontanta> As <type_data> = <nilai_data>
Contoh : Const tgl_gajian As Date = #25/09/2003#


1.1  Mengenal Struktur Kontrol

Struktur kontrol di dalam bahasa pemrograman adalah perintah dengan bentuk (struktur) tertentu yang
digunakan untuk mengatur (mengontrol) jalannya program.
Visual Basic 6 mengenal dua jenis struktur kontrol, yaitu :
1. Struktur kontrol keputusan - digunakan untuk memutuskan kode program mana yang akan
dikerjakan berdasarkan suatu kondisi. Akan dibahas pada bab ini.
2. Struktur kontrol pengulangan - digunakan untuk melakukan pengulangan kode program. Akan
dibahas pada bab selanjutnya.

Ada dua bentuk struktur kontrol keputusan, yaitu :
1. Struktur IF…THEN. Akan dibahas pada bab ini.
2. Struktur SELECT…CASE. Akan dibahas pada bab selanjutnya.

Bentuk penulisan (syntax) struktur IF…THEN :
1. IF <kondisi> THEN <kode program>
Bila <kondisi> bernilai True maka <kode program> akan dikerjakan.
2. IF <kondisi> THEN
<blok kode program 1>
ELSE
<blok kode program 2>
END IF
Bila <kondisi> bernilai True maka <blok kode program 1> akan dikerjakan, tetapi bila <kondisi>
bernilai False maka <blok kode program 2> yang akan dikerjakan.

1.2 Struktur Kontrol Select…Case
Bentuk penulisan (syntax) struktur SELECT…CASE :
SELECT CASE <pilihan>
CASE <pilihan 1>
<blok kode program 1>
CASE <pilihan 2>
<blok kode program 2>
CASE <pilihan n>
<blok kode program n>
[CASE ELSE
<blok kode program x>]
END SELECT

Bila <pilihan> sesuai dengan <pilihan 1> maka <blok kode program 1> akan dikerjakan, dst. Tetapi bila <pilihan> tidak ada yang sesuai dengan <pilihan 1> s/d <pilihan n> maka <blok kode program x> yang akan dikerjakan.

1.1  Mengenal Struktur Kontrol

Struktur kontrol di dalam bahasa pemrograman adalah perintah dengan bentuk (struktur) tertentu yang digunakan untuk mengatur (mengontrol) jalannya program.

Visual Basic 6 mengenal dua jenis struktur kontrol, yaitu :
1. Struktur kontrol keputusan - digunakan untuk memutuskan kode program mana yang akan
dikerjakan berdasarkan suatu kondisi. Sudah dibahas pada bab lalu.
2. Struktur kontrol pengulangan - digunakan untuk melakukan pengulangan kode program. Akan
dibahas pada bab ini.

Ada dua bentuk struktur kontrol pengulangan (looping), yaitu :
1. Struktur FOR…NEXT.
2. Struktur DO…LOOP.

1.2 Struktur Kontrol For…Next
Bentuk penulisan (syntax) struktur For…Next :
FOR <pencacah> = <awal> TO <akhir> [STEP <langkah>]
<blok kode program>
NEXT <pencacah>
􀂃 <pencacah> adalah variabel (tipe: integer) yang digunakan untuk menyimpan angka pengulangan.
􀂃 <awal> adalah nilai awal dari <pencacah>.
􀂃 <akhir> adalah nilai akhir dari <pencacah>.
􀂃 <langkah> adalah perubahan nilai <pencacah> setiap pengulangan. Sifatnya optional (boleh ditulis
ataupun tidak). Bila tidak ditulis maka nilai <langkah> adalah 1.

1.2  Struktur Kontrol Do…Loop

Bentuk penulisan (syntax) struktur Do…Loop :

1. DO WHILE <kondisi>
<blok kode program>
LOOP
<blok kode program> akan diulang selama <kondisi> bernilai TRUE. Pengulangan berhenti bila
<kondisi> sudah bernilai FALSE.

2. DO UNTIL <kondisi>
<blok kode program>
LOOP
<blok kode program> akan diulang sampai <kondisi> bernilai TRUE. Pengulangan berhenti bila
<kondisi> sudah bernilai TRUE.

1.1 Apa itu Array ?
Array merupakan sekumpulan nilai data yang “dikelompokkan” dalam sebuah variabel. Array
digunakan bila ada beberapa nilai data yang tipe datanya sama dan akan mendapat perlakuan yang sama pula. Misalnya, ada 10 nilai data dengan tipe string dan akan diolah dengan cara yang sama, maka akan lebih mudah jika menggunakan sebuah array dibandingkan bila menggunakan 10 variabel yang berbeda. Setiap nilai data di dalam sebuah array disebut elemen array dan masing-masing dibedakan dengan nomer indeksnya.
1.2 Menggunakan Array
Sebuah array dideklarasikan dengan cara yang sama dengan variabel, yaitu menggunakan perintah Dim, kemudian diikuti dengan tanda kurung dan jumlah
Dim nama_array(jumlah_elemen - 1) As tipe_data
Contoh :
Dim NamaSiswa(99) As String 􀃆 array NamaSiswa akan mempunyai elemen sebanyak 100 dengan
nomer indeks mulai dari 0 s/d 99.
Selanjutnya untuk mengisi nilai data ke dalam array :
nama_array(no_indeks) = nilai_data
Contoh :
NamaSiswa(0) = “umar”
Namasiswa(1) = “fatimah”
Untuk “mengosongkan” nilai data, bisa menggunakan struktur kontrol For…Next :
For i = 0 To 99
NamaSiswa(i) = “”
Next i
Lebih mudah bukan ?
Catatan :
􀂃 Agar nomer indeks array dimulai dari 1 (bukan 0), bisa menggunakan perintah Option Base 1
sebelum perintah Dim-nya, contoh :
Option Base 1
Dim NamaSiswa(100) As String
􀂃 Atau bisa juga menggunakan kata To di dalam penentuan jumlah elemen array, contoh :
Dim NamaSiswa(1 To 100) As String
􀂃 Untuk mengetahui berapa jumlah elemen di dalam sebuah array, bisa menggunakan perintah
Ubound(nama_array), contoh :
Dim NamaSiswa(1 To 100) As String
Dim JmlElemen As Integer
JmlElemen = Ubound(NamaSiswa) 􀃆 hasilnya = 100
􀂃 Bila jumlah elemen array yang dibutuhkan tidak diketahui atau ingin bisa diubah-ubah, maka
bagian jumlah_elemen pada perintah Dim tidak perlu diisi, contoh :
Dim NamaSiswa() As String
Teknik ini biasa disebut sebagai array dinamis, biasanya untuk mengisi data yang berkembang terus, dan
belum bisa ditentukan di awal jumlah elemennya.
􀂃 Untuk mengubah jumlah elemen array digunakan perintah Redim :
Redim [Preserve] nama_array(jumlah_elemen)
Contoh :
Redim NamaSiswa(1 To 150) 􀃆 jumlah elemen array NamaSiswa menjadi 150 dengan
nomer indeks dari 1 s/d 150.

1.1 Apa itu Procedure ?
Procedure adalah blok kode program yang berisi perintah-perintah untuk mengerjakan tugas tertentu. Bila di dalam kode program yang kita buat ada perintah-perintah untuk melakukan tugas yang sama di beberapa tempat, maka akan lebih baik perintah-perintah tersebut dibuat dalam sebuah procedure. Kemudian, procedure itu bisa di-‘panggil’ bila diperlukan.
Penggunaan procedure sangat menghemat penulisan kode program, karena kode-kode program yang sama dibeberapa tempat cukup dibuat pada satu bagian saja. Selain itu, procedure akan memudahkan perbaikan kode program bila terjadi perubahan atau kesalahan, karena perbaikan cukup dilakukan pada satu bagian saja.
1.2 Jenis-jenis Procedure
Pada VB6 ada 4 jenis procedure, yaitu :
              􀂃 Procedure Sub – procedure yang tidak mengembalikan nilai setelah ‘tugas’-nya selesai.
              􀂃 Procedure Function – procedure yang mengembalikan nilai setelah ‘tugas’-nya selesai.
              􀂃 Procedure Event – procedure untuk suatu event pada sebuah object. Digunakan di dalam class module.
              􀂃 Procedure Property – procedure untuk mengubah (let) atau mengambil (get) nilai property pada sebuah object. Digunakan di dalam class module.
Pada bab ini akan dibahas penggunaan procedure sub dan function. Procedure event dan property akan dibahas pada bab selanjutnya.
Bentuk penulisan (syntax) procedure sub :
[Public | Private] Sub <nama_sub> ([<argumen>])
<isi procedure>
End Sub
Sedangkan bentuk penulisan (syntax) procedure function :
[Public | Private] Function <nama_function> ([<argumen>]) As <tipe_data>
<isi procedure>
End Function
Pernyataan [Public | Private] menentukan ruang lingkup (scope) procedure. Sebuah procedure dengan scope public bisa digunakan dalam lingkup project. Sedangkan procedure dengan scope private hanya bisa digunakan dalam lingkup form saja.
<nama_sub> atau <nama_function> dibuat sebagai pengenal procedure saat di-‘panggil’. Aturan penamaan sebuah procedure sama dengan aturan penamaan sebuah variabel. Nama sebuah procedure dibuat unik, tidak boleh ada yang sama.
<argumen> merupakan serangkaian nilai dan tipe data yang dipakai oleh procedure untuk mengerjakan ‘tugas’-nya. Sebuah procedure bisa saja tidak memakai argumen sama sekali.
Pernyataan As <tipe_data> pada procedure function menentukan tipe data nilai yang akan dikembalikan (return value) setelah ‘tugas’-nya selesai.
Untuk menggunakan sebuah procedure, maka procedure tersebut harus di-‘panggil’ pada bagian tertentu dari kode program. Procedure sub di-‘panggil’ dengan pernyataan :
Call <nama_sub>([<argumen>])
Sedangkan procedure function bisa di-‘panggil’ langsung dengan menyisipkannya di dalam kode program yang memanggilnya