Penggunaan instruksi untuk menghitung suatu nilai yaitu instruksi add, sub, mul, dan div.
Instruksi tersebut bisa diartikan add untuk penjumlahaan, sub untuk pengurangan, mul untuk
perkalian dan div untuk pembagian.
Berikut adalah beberapa kerangka potongan kode assembly (pseudo-assembly) untuk menghitung
volume bangun ruang atau object 3D.
1. Kubus
v=s×s×s
mul ax
mul ax
mul ax ; sisi * sisi * sisi
Contoh diatas menghitung volume kubus, untuk melakukan implementasi rumus tersebut bisa
dengan menggunakan instruksi mul.
2. Balok
v= p×l×t
mul bx ; panjang * lebar
mul cx ; lebar * tinggi
Contoh diatas menghitung volume balok, untuk melakukan implementasi rumus tersebut bisa
dengan menggunakan instruksi mul.
Untuk menghitung volume seperti tabung, kerucut, bola, dsb, angka yang bisa digunakan adalah
tipe float dan double artinya bilangan yang ber-koma, maka dari itu dibutuhkan register FPU
(Floating Point) yang mungkin belum familiar, mungkin disini saya akan memberikan sedikit
gambaran dan contoh penggunaan register FPU ini.
X86 Assembly/Floating Point1
FPU memiliki 8 register, dari st0 ke st7 dibentuk menjadi stack/tumpukan. Angka di- push ke
tumpukan dari memori, dan di- pop kembali dari tumpukan ke memori. Instruksi FPU umumnya
kan mengeluarkan dua item pertama dari tumpukan, menindaklanjutinya, dan mendorong
jawabannya kembali ke atas tumpukan.
Angka dengan tipe float umumnya bisa panjang 32-bit (tipe C “float”), atau panjang 64-bit (tipe
C “double”). Namun, untuk mengurangi kesahalan pembulatan, register stack FPU memiliki
lebar 80 bit.
Kebanyakan konvensi pemanggilan atau yang biasa disebut calling convention mengembalikan
nilai floating point dalam register st0.
3. Tabung
v=π×r×r×T
fldpi ; st0 = 3.14
Contoh diatas menghitung volume tabung, untuk melakukan implementasi rumus tersebut bisa
dengan menggunakan instruksi fmul dan fld.
Contoh diatas menghitung volume limas persegi, untuk melakukan implementasi rumus tersebut
bisa dengan menggunakan instruksi fmul, fstp, fst dan fld.
5. Limas Segitiga
1 1
v= ×( ×a×b×t )
3 2
v=(a×t /2)/3×T
6. Prisma Segitiga
1
v= ×a×b×t
2
Contoh diatas menghitung volume prisma segitiga, untuk melakukan implementasi rumus tersebut
bisa dengan menggunakan instruksi fmul, fstp, fst dan fld.
7. Kerucut
1
v= ×r×r×t
3
Contoh diatas menghitung volume kerucut, untuk melakukan implementasi rumus tersebut bisa
dengan menggunakan instruksi fmul dan fld.
8. Bola
4
v= ×π×r×r×r
3
Contoh menghitung volume bola :
Contoh diatas menghitung volume bola, untuk melakukan implementasi rumus tersebut bisa
dengan menggunakan instruksi fmul, fstp, fst dan fld