Selasa, 27 Januari 2009

BAHASA RAKITAN DAN PEMROGRAMAN

BAHASA PEMROGRAMAN

Bahasa Pemrograman merupakan bahasa yang digunakan untuk memberikan program atau perintah kepada komputer

.a. Bahasa Alamiah (Natural Language)
Menggunakan bahasa percakapan biasa.Terbentuk secara proses alam

b. Bahasa peringkat sangat tinggi
· Juga dikenali sebagai 4GLS.
· Lebih mudah tetapi penggunaannya agak terbatas.
· Tidak semua aplikasi boleh dihasilkan menggunakan bahasa ini.
· Satu baris arahan dalam bahasa ini mungkin memerlukan beratus-ratus baris arahan menggunakan bahasa peringkat III.
· Biasanya digunakan untuk pengkalan data (database) seperti SQL (Structured Query Language).\
Contoh SQL:
SELECT Nama, Alamat, Tanggallahir
FROM Record_pelajar
WHERE Kota = 'Semarang

c. Bahasa peringkat tinggi ( 3rd GLS)
· Mulai digunakan pada tahun 1960, tetapi pada masa itu, bahasa ini bukanlah seperti bahasa peringkat tinggi yang digunakan sekarang.
· Dipanggil peringkat tinggi karena lebih mudah untuk difahami dan biasanya menggunakan perkataan-perkataan Inggeris tertentu untuk menulis sesuatu arahan.
Contoh arahan yang digunakan Goto, While, End, Exit, sub dan sebagainya. · Seperti juga bahasa peringkat II, bahasa ini memerlukan penterjemah sebelum ditukar ke bahasa mesin· Dengan menggunakan bahasa peringkat ini pengaturcara boleh menfokuskan untuk menyelesaikan masalah yang lebih kompleks.
· Contoh bahasa yang digunakan pada peringkat ini adalah bahasa C, C++, Pascal, Fortan, COBOL, BASIC dan Dalphi, Java dan sebagainya.

d. Bahasa assembly
· Peringkat bahasa paling rendah yang mampu difahami manusia.
· Memerlukan latihan, kepakaran, pengalaman yang sangat tinggi.
· Menggunakan singkatan tertentu bagi mewakili sesuatu proses seperti A - Add, C Compare, MP multiplug.
· Bahasa ini menghasilkan bahasa mesin yang kecil dari segi saiz dan perkakasan programnya.
· Ditukar menjadi bahasa mesin (peringkat 1) oleh assembler.
· Lebih mudah difahami berbanding peringkat pertama.

Contoh Bahasa Assembly:

PRINT NOGEN
PROGB START 0

CARDFIL DTFCD DEV ADDR = SYSRDR. RECFORM - FIXUNB, IOAREAI =CARDEC.C
TYPEFLF = INPUT, BLKYZE = 80, EOFDOR = FINISH.
REPTFIL DTFCD DEFADDR = SYSLST, IOAREA 1 - PRINTREL, BLK872 = 132

e. Bahasa mesin

· Bahasa peringkat yang paling rendah.
· Terlalu sukar dan mungkin mustahil difahami manusia.
· Sebarang data/arahan hanya diwakili oleh 0 atau 1 sahaja.
· Bahasa ini berbeza untuk mesin-mesin/komputer yang berlainan jenis.
· Hanya difahamai oleh komputer.
· Segala bahasa peringkat 2 hingga 5 perlu diterjemah kepada peringkat ini sebelum dilaksanakan.

Contoh: AF 12 FF 11 10 12
0100 101100

LATAR BELAKANG

Sebuah sistem mikro komputer terdiri dari sebuah sistem unit, keyboard, layar monitor, dan disk drive.
· Sistem unit terdiri dari papan sirkuit (the circuit boards of the computer).
· Integrated Circuit (IC) digunakan untuk menyusun circuit komputer, dimana setiap chip berisi ratusan bahkan ribuan transistor. · IC disebut sebagai digital circuits karena beroperasi dengan menggunakan sinyal listrik tinggi (a high voltage) dan sinyal listrik rendah a low voltage signals). · Simbol 0 dan 1 digunakan untuk low dan high voltage signals. Simbol tersebut dikenal dengan binary digits atau bits.
· Semua informasi yang diproses oleh komputer adalah terjemahan dari string 0 dan 1 yang adalah bit strings, sehingga disebut juga machine Language atau Bahasa Mesin.Operasi komputer dikontrol oleh software. Sebuah CPU hanya akan dapat diproses dengan intruksi bahasa mesin, seperti berikut: 
Machine Instruction
Operation
10100001 00000000 00000000 fetch the contents of memory
00000101 00000101 00000000 Add 4 to register Ax
10100011 00000000 00000000 store the contents of AX in memory word 0

Betapa sulitnya membuat program dalam bahasa mesin. Untuk keperluan tersebut dibutuhkan bahasa rakitan atau assembler yang menggunakan simbol untuk menjelaskan operasi, registers, dan lokasi memori.

Contoh bahasa rakitan : Assembly



mov AX, A Fetch the contents of memory word 0
put it in register AX
ADD AX,4 Add 4 to AX
Mov A,AX store the contents of AX in memory word 0

Sebuah program yang ditulis dalam bahasa assembly harus dikonversi ke bahasa mesin sebelum CPU menjalankannya. untuk itu dibutuhkan sebuah assembler untuk menterjemahkan setiap statement bahasa kedalam instruksi bahasa mesin tunggal.

Banyak alasan mengapa seorang programmer memilih bahasa tingkat tinggi daripada bahasa assembly:
bahasa tingkat tinggi mendekati bahasa manusia (natural language), sehingga mudah dibaca dan dipahami
sebuah bahasa assembly umumnya berisi banyak statement dibanding bahasa tingkat tinggi sehingga membutuhkan banyak waktu untuk membuatnya.
setiap komputer mempunyai bahasa assembly yang unik. program bahasa aseembly dibatasi oleh satu mesin, tetapi program bahasa tingkat tinggi dapat diproses di banyak mesin yang punya compilernya.
sedangkan beberapa alasan utama menulis dengan bahasa assembly antara lain adalah
efisiensi, karena bahasa assembly mendekati bahasa mesin, sebuah program aseembly yang baik akan dijalankan lebih cepat, memendekkan bahasa mesin.
banyak operasi, seperti membaca atau menulis secara spesifik kelokasi memori dan I/O ports dapat dikerjakan dengan mudah dalam bahasa assembly tetapi tidak mungkin dibahasa tingkat tinggi
banyak bahasa tingkat tinggi dapat menerima subprogram yang ditulis dengan bahasa assembly.

The x86 Interrupt List a.ka "Ralf Brown's Interrupt List", "RBIL"

The interrupt list is a comprehensive listing of interrupt calls, I/O ports, memory locations, far-call interfaces, and more for IBM PCs and compatible machines, both documented and undocumented. Nearly eight megabytes of information in ASCII text files!

System Requirements: a computer which can extract ZIP files and display plain vanilla ASCII text files. Some of the enclosed utilities are slightly pickier :-).

The following links point at the most current version of the x86/MS-DOS Interrupt List (Release 61, 16jul00). In Mosaic, set Load to Local Disk from the Options menu before accessing them; in Lynx, select Download while highlighting one of the links; in Microsoft Internet Explorer, right-click on the link and select Save Target As.
Interrupt List, Part A (360k)
Interrupt List, Part B (364k)
Interrupt List, Part C (515k)
Interrupt List, Part D (729k)
Interrupt List, Part E (272k) -- utility programs
Interrupt List, Part F (517k) -- hypertext conversion
FAQ.LST -- the file I left out of INTER61 (1.3k)
DVINT -- DESQview-specific excerpt (Rel43, 06nov94, 106k)
RBpci v1.19 (125k) -- PCI device info program 10jan99
Contributed files
The following interrupt list-related files have been contributed by others:
RBILVIEW v2.1 (367k, 05apr99) Win95/98 list viewer
The author wants feedback, so tell him what you like/dislike if you download this file....
Original website:
http://www.cs.cmu.edu/~ralf/files.html

Untuk versi web nya:
http://poli.cs.vsb.cz/misc/rbint/ix/index.html

Teknik Pemrograman Bahasa Asembler PIC16F877A

Sebelum belajar lebih jauh mengenai teknik-teknik pemrograman assembler untuk PIC16F877A, terlebih dahulu harus memahami aturan-aturan dasar penulisan bahasa assembler. Penulisan program dalam bahasa assembler dapat dilakukan menggunakan teks editor, dalam hal ini penulis menggunakan MPLAB.

1. Elemen-Elemen Bahasa Asembler

Elemen-elemen dasar bahasa assembler meliputi:

  * Label
  * Instruksi
  * Operan
  * Komentar
  * Pengarah (Directive)

2. Label

Label digunakan sebagai penanda baris dalam suatu program. Label sangat bermanfaat untuk operasi percabangan (misalnya GOTO) dan pemeriksaan program. Hal yang perlu diperhatikan dalam penulisan label adalah bahwa label harus diawali dengan huruf alphabet atau garis bawah. Penulisan label harus mulai pada kolom pertama dan panjang maksimum adalah 32 karakter.
 
3. Instruksi

Instruksi-instruksi yang digunakan pada suatu mikrokontroler sudah tertentu jenisnya, sehingga kita harus benar-benar memahami arti dan kegunaan dan kegunaan dari instruksi yang akan kita gunakan. Cara penulisan instruksi disebut sintaks.

4. Operan

Operan merupakan elemen yang dioperasikan oleh suatu instruksi. Operan biasanya berupa register, variable atau konstanta.

5. Komentar

Komentar merupakan kata atau kalimat yang dituliskan seorang pemrogram untuk memperjelas, memberi keterangan dan memudahkan identifikasi dalam menyusun program. Komentar biasanya diletakkan setelah instruksi dan harus diawali dengan tanda titik koma ”;”. Komentar tidak akan berpengaruh pada eksekusi program karena komentar tidak akan di proses oleh translator.

6. Pengarah (Directive)

Pengarah assembler serupa dengan instruksi, namun ia independet terhadap model mikrokontroler. Pengarah assembler mempresentasikan karakteristik dari bahasa asembler yang digunakan.

Dalam penulisan program terdapat aturan tidak tertulis untuk menyertakan informasi singkat mengenai program tersebut. Informasi tersebut biasanya diletakkan di bagian awal program dan berisi informasi nama dan kegunaan program, versi, nama program, waktu pembuatan, jenis mikrokontroler dan sebagainya. Informasi ini dituliskan sebagai komentar, sehingga diawali dengan tanda titik koma ”;”.

  Masuk