Tkj Jambi STMIK Nurdin Hamzah Jambi, Teknik Informatika

Friday, 7 August 2015

Pengenalan bahasa Assembly

  Komputer yang kita lihat sekarang semuanya telah terlihat bagus dan indah, bisa mengerjakan berbagai tugas dan proses sekaligus, namun apakah yang terjadi di dalam computer kita sebenarnya? Semua yang ada di dalam memori hanyalah susunan/deretan dari angka-angka biner(0 dan 1), semua input dari user dan output kepada user berjalan dengan interrupt dan yang dilakukan oleh computer hanyalah pemindahan data dari satu alamat ke alamat lain melalui register. Semua yang computer lakukan itu bisa kita atur dengan menggunakan bahasa assembly.
Pada artikel ini kita akan mengenali tentang bahasa Assembly dulu. Assembly adalah bahasa pemrograman tingkat rendah untuk sebuah computer dan hardware-hardware lainnya. Bahasa assembly sangat bergantung kepada hardware dimana bahasa tersebut diimplementasikan, mudahnya, bahasa assembly di PC berbeda dengan bahasa assembly di Mac. Bahasa assembly menggunakan register untuk membantu jalannya pemrograman dan pemindahan-pemindahan data. Bahasa assembly memungkinkan programmer untuk memanfaatkan hardware dengan maksimal, misal mempercepat kinerja dengan menggunakan perintah yang menggunakan clock cycle lebih sedikit. Tak hanya hardware, software pun kita bisa optimalisasi dengan melihat program codenya dalam bahasa assembly.
Di dalam bahasa assembly penulisan angka bisa dengan 3 bentuk yaitu decimal(0-9), biner, dan hexadecimal(0-9,A-F). Hexadecimal biasa digunakan untuk menuliskan alamat, karena alamat pada dasarnya tertulis dengan angka biner yang sangat panjang misal alamat 11111111 dalam biner bisa ditulis dengan FF dalam hexadecimal
Register memiliki banyak jenis, tergantung untuk kegunaannya seperti :
1.       AX, BX, CX, DX untuk kegunaan umum, berukuran 16 bit(16 digit angka biner). Register ini bisa diperkecil menjadi 8 bit register, AX menjadi AH dan AL, namun apabila AX dirubah maka AH dan AL akan berbah dan sebaliknya.
Lebih detilnya :
a.       AX untuk perkalian dan pembagian, dan penyimpanan string
b.      CX untuk menghitung operasi dan perubahan string
c.       DX untuk port address IN dan OUT(intel processor only)
d.      BX adalah index register untuk MOV
2.    SI, DI adalah index register berukuran 16 bit, biasa digunakan sebagai pointer dan juga bisa digunakan untuk kegunaan umum, namun tidak bisa diperkecil menjadi register 8 bit
3.       BP(Base Pointer, menunjukkan dasar dari stack), SP(Stack Pointer, menunjukkan puncak dari stack) adalah register 16 bit yang digunakan untuk menunjuk suatu data.
4.       CS(Code Segment), DS(Data Segment), ES(Extra Segment), SS(Stack Segment adalaha segment register berukuran 16 bit yng digunakan untuk menunjukkan memori yang digunakan di dalam program. Instruction Pointer(IP) register digunakan dengan CS untuk mencatat alamat dari perintah berikutnya yang akan dikerjakan oleh CPU.
5.       FLAGS register menyimpan informasi penting dari hasil perintah sebelumnya.

sumber

0 komentar:

Post a Comment

TOTAL PAGEVIEWS

Follow Us

Blog Archive

About Me

ilmu komputer zakaria
View my complete profile

Blog Archive

blog

https://ilmukomputerzakaria.blogspot.com https://perhitunganakuntansitkjzakaria.blogspot.com https://debianzakariamustin.blogspot.com

Translate

Muhammad Zakaria Mustin. Powered by Blogger.

Contact Form

Name

Email *

Message *