Assembly Collection : 1 Menghitung Hasil dan Sisa Bagi dari Dua Bilangan

Last Updated on 13 years by Hafizh Herdi

Kode yang ada disini dibuat menggunakan SPIM Assembly, atau bisa juga disebut dengan MIPS. Ini hanyalah sebuah operasi dasar, tapi kalau kamu bilang soal Assembly, hal yang dasar pun terkadang menjadi susah.

Program ini akan meminta inputan dua buah bilangan, dan kemudian menghitung jumlah, hasil bagi dan sisa bagi. Dalam Assembly, operator div dapat menyelesaikan operasi hasil bagi dan sisa bagi sekaligus, dan kita hanya perlu memindahkannya dengan mfhi dan mflo.

Screenshot Program Assembly hitung

Kode program, simpan dengan nama file hitung.asm

.data
teks1:.asciiz "nBilangan pertama : "
teks2:.asciiz "nBilangan kedua : "
teks3:.asciiz "nJumlah kedua bilangan : "
teks4:.asciiz "nHasil bagi kedua bilangan : "
teks5:.asciiz "nSisa bagi kedua bilangan : "
.text
.globl main
main :

    la $a0, teks1 #masukkan teks1 ke a0
    li $v0, 4
    syscall

    #baca bilangan pertama
    li $v0, 5
    syscall
    move $t0, $v0

    #print teks 2
    la $a0, teks2
    li $v0, 4
    syscall

    #baca bilangan kedua
    li $v0, 5
    syscall
    move $t1, $v0

    #menghitung jumlah
    add $t2, $t0, $t1

    #menghitung mod dan div
    div $t1, $t0
    mfhi $t3
    mflo $t5

    #print teks jumlah
    la $a0, teks3
    li $v0, 4
    syscall

    #print jumlah
    move $a0, $t2
    li $v0, 1
    syscall

    #print teks hasil bagi
    la $a0, teks4
    li $v0, 4
    syscall

    #print hasil bagi
    move $a0, $t5
    li $v0, 1
    syscall

    #print teks sisa bagi
    la $a0, teks5
    li $v0, 4
    syscall

    #print sisa bagi
    move $a0, $t3
    li $v0, 1
    syscall
exit :
    jr$ra

Program pembanding yang menggunakan bahasa Java, simpan dengan nama file Hitung.java

import java.util.Scanner;

class Hitung
{
    public static void main(String... args)
    {
        Scanner s = new Scanner(System.in);
        int bil1 = 0;
        int bil2 = 0;
        int jum = 0;
        int bag = 0;
        int mods = 0;
        System.out.print("Bilangan pertama : ");
        bil1 = s.nextInt();
        System.out.print("Bilangan kedua : ");
        bil2 = s.nextInt();
        jum = bil1 + bil2;
        bag = bil1 / bil2;
        mods = bil1 % bil2;
        System.out.println("Hasil jumlah kedua bilangan : " + jum);
        System.out.println("Hasil bagi kedua bilangan " + bag);
        System.out.println("Sisa bagi kedua bilangan " +mods);
    }
}




Download aplikasi kami di Google Play Store


Tutorial Menarik Lainnya :

No Responses
TWOH&Co.