BAHASA ASSEMBLY

BAHASA RAKITAN

Komputer terdiri dari System Bus, CPU, dan RAM.
·        System Bus berfungsi sebagai penghubung dengan komponen komputer.
·        CPU merupakan jantung komputer, hampir seluruh perhitungan dilakukan didalam CPU.
·        RAM merupakan tempat dimana program di loading untuk dieksekusi.

CPU ( Centra Processing Unit )
Memiliki 8 general purpose :
1.     AX – the accumulator register ( dibagi menjadi AH/AL )
2.     BX – the base address register ( dibagi menjadi BH/BL )
3.     CX –  the count register ( dibagi menjadi CH/CL )
4.     DX – the data register ( dibagi menjadi DH/DL )
5.     SI – source indek register
6.     DI – destination index register
7.     BP – base pointer
8.     SP – stack pointer
Tujuan utama dari register adalah penyimpanan angka ( variable ). Ukuran register diatas ada 8 bit, 4 general purpose register ( Ax, BX, CX, DX ) dan dari dua 8 bit register yang terpisah.
Ex.
AX = 0011000000111001b, maka ( dibagi )
AH =  00110000b dan AL = 00111001b
NB : H adalah High dan L adalah Low.

 < Segmen Register >
CS – menunjuk pada segmen yang berisi program sekarang ( Current Program ).
DS – menunjuk pada segmen dimana variable didefinisikan.
ES – register segmen extra, tergantung programnya mendefinisikan penggunanya.
SS – menunjuk pada segmen yang berisi stack ( Tumpukan ).
Tujuan segmen register adalah menunjuk blok memori yang dapat diakses segmen register bekerjasama dengan general purpose untuk mengakses setiap nilai memory.
Contohnya, jika kita akan mengakses memori pada physical address 12345h(hexadecimal), kita perlu mengeset DS=1230h dan SI=0045h. Ini bagus karena dengan cara ini kita dapat mengakses lebih banyak memory daripada register tunggal yang terbatas pada nilai 16 bit. CPU membuat kalkulasi dari dari physical address Dengan   mengalikan   segment   register   dengan   10h   dan menambahkan general purpose register  (1230h * 10h + 45h = 12345h).


MEMORY ACCESS
Untuk mengakses memori dapat menggunakan 4 register : BX, SI, DI, dan BP.
Register tersebut dapat dikombinasikan didalam simbol tanda kurung [].
Mode Pengalamatan :

d8 - merupakan penggantian nilai yang terdekat untuk 8 bit signed
(contoh: 22, 55h, -1, etc...)
d16 - merupakan penggantian nilai terdekat untuk 16 bit signed
(contoh: 300, 5517h, -259, etc...)
Penggantian dapat menjadi nilai offset dari variable atau keduanya. Jika ada beberapa nilai, assembler mengevaluasi semua  nilai tersebut dan mengkalkulasi sebagai nilai  terdekat tunggal. Umumnya compiler memperhatikan antara d8 dan d16 dan men-generate kode mesin yang diperlukan.




Komentar

Postingan populer dari blog ini

MAKALAH STAR OFFICE WRITER

BAHASA ASSEMBLY

MAKALAH HAJI DAN UMROH