Sistem Bilangan Dan Register - Numbers And Register Systems (Assembly language) [ENG-IND]

[ENGLISH]

Hi steemians ... 

This time I will share about the system of numbers and registers in assembly language. In programming with assemble language, usually used various types of numbers, the example is: binary, octave, decimal, and hexadecimal. The purpose of this post is: 

1. to get to know the number system. 

2. able to convert the number system. 

3. display and read the contents of the register. 

4. know the functions of registers as data addressing. 

5. Understanding the creation of programs with extension COM and EXE.

6. Can run the program by using TASM 

Command the data transfer instructions are: 

1) Click the start menu on the computer .

2) Select All programs and select accessories. 

3) Select Command Prompt.

4) Type D: 

5) Then type cd tasm. 

6) Then type cd bin.

7) Then type debug and press Enter. 

8) Then type A 100 and hit Enter. 

9) Then type the command MOV AX, 0090H MOV DS, AX MOV SI, 0120H MOV IN, 0130H MOV AX, SI MOV IN, AX INT 20H. 

10) To see the results of the program above type the letter T (Trace) and press Enter and see the value of each register. 

11) To name the program we created is to type the letter n name program.com -n test.com. 

  •  Test Result Data
  • MOV DS, AX

    MOV SI,0120

    MOVE DI, 0130

    MOV AX,SI

    MOV DI,AX

    INT 20

  •  Data analysis :

1. MOV = command to fill, move, update the contents of a register, variable or a memory location AX = general purpose register, 0090H = hexadecimal address MOV AX, 0090H = move the value 0090H to register AX. 

2. DS = segment register (Data Segment) used to indicate the place of segment, AX = general purpose register MOV DS, AX = move the DS register to register AX. 

3. SI = source index, commonly used in string operation with direct access 0120H = hexadecimal address MOV SI, 0120H = move niali 0120H to register SI. 

4. IN = register destination index, commonly used in string operation, 0130H = hexadecimal address MOV IN, 0130H = move nilao 0130H to register DI. 

5. AX = general purpose register SI = source index MOV AX, SI = move the SI register to register AX. 

6. DI = register destination index AX = general purpose register MOV IN, AX = move the AX register to the DI register. 

7. INT 20H = interrupt 20H (terminates the program), serves to end the program and entirely hand over control to DOS.

[INDONESIA]

Hai steemians... 

Kali ini saya akan berbagi tentang sistem bilangan dan register dengan menggunakan bahasa pemrograman assembly. Didalam pemrograman dengan bahasa assembly, biasanya digunakan berbagai jenis bilangan, contoh nya adalah : bilangan biner, oktaf, decimal, dan hexadecimal. Tujuan dari postingan kali ini adalah :

1. untuk mengenal sistem bilangan. 

2. mampu mengkonversikan sistem bilangan.

3.  menampilkan dan membaca isi register. 

4.  mengetahui fungsi-fungsi register sebagai pengalamat data.

5. Memahami pembuatan program yang berekstensi COM dan EXE. 

6. Dapat menjalankan program dengan menggunakan perintah TASM.

Adapun instruksi pemindahan data yaitu : 

1) Klik menu start pada computer.

2) Pilih All programs dan pilih accessories. 

3) Pilih Command Prompt.

4) Ketikkan D:

5) Lalu ketikkan cd tasm.

6) Lalu ketikkan cd bin.

7) Lalu ketikkan debug dan tekan Enter. 

8) Kemudian anda ketikkan huruf A 100 dan tekan Enter. 

9) Lalu ketikkan perintah MOV AX, 0090H MOV DS, AX MOV SI,0120H MOV DI,0130H MOV AX,SI MOV DI,AX INT 20H 

10) Untuk melihat hasil program diatas ketikkan huruf T (Trace) lalu tekan Enter dan lihat nilai dari tiap register  

11) Untuk member nama pada program yang kita buat adalah dengan mengetikan huruf n nama program.com -n test.com

  • Data Hasil Percobaan 
  • MOV DS,AX

    MOV SI,0120

    MOV DI,0130

    MOVE AX,SI

    MOVE DI,AX

    INT 20

  • Analisa Data : 

1. MOV = perintah untuk mengisi, memindahkan, memperbarui isi suatu register, variabel ataupun suatu lokasi memori
AX = general purpose register
0090H = alamat hexadecimal
MOV AX,0090H = pindahkan nilai 0090H ke register AX

2. DS = segmen register (Data Segment) biasa digunakan untuk menunjukkan tempat segment
AX = general purpose register
MOV DS,AX = pindahkan register DS ke register AX  

3. SI = source index, biasa digunakan pada operasi string dengan mengakses secara langsung
     0120H = alamat hexadecimal
     MOV SI,0120H = pindahkan niali 0120H ke register SI

4. DI= register destination index, biasa digunakan pada operasi string
     0130H = alamat hexadecimal
     MOV DI,0130H = pindahkan nilao 0130H ke register DI

5. AX = general purpose register
     SI = source index
     MOV AX,SI = pindahkan register SI ke register AX

6. DI = register destination index
     AX = general purpose register
     MOV DI,AX = pindahkan register AX ke register DI

7. INT 20H = interupsi 20H (mengakhiri program), berfungsi untuk mengakhiri program dan menyerahkan kendali      sepenuhnya pada DOS

Terima kasih banyak atas perhatian nya, semoga dapat bermanfaat.


Salam Komunitas Steemit Indonesia!!!


Keep Steam On and Follow Me @yandaalpiansyah

Sort:  

Nice great buddy,keep it up,and i really a big fan of dragon ball super

@yandaalpiansyah

Wahhh menarik. Tp saya ga faham.. Bkn bidang saya nih hehe