Top Banner
Instruksi-Instruksi Pemindahan Data Sistem Komputer Universitas Gunadarma
35

Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Apr 13, 2019

Download

Documents

buihuong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Instruksi-InstruksiPemindahan Data

Sistem KomputerUniversitas Gunadarma

Page 2: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV

n Intruksi MOV diperkenalkan bersama-sama dengan instruksi bahasa mesinyang dapat digunakan dalam bermacam-macam mode pengalamatan daninstruksi.¡ Bahasa mesin adalah kode biner asli (native)

yang dapat dimengerti oleh mikroprosesordan dugunakan sebagai instruksi-instruksikontrol dalam operasinya.

n Lihat format instruksi pada gambar 4.1

Page 3: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 4: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Opcode¡ Opcode memilih operasi (penambahan,

pengurangan, pemindahan dll) yang dilakukan olehmikroprosesor.

¡ Panjang opcode adalah satu atu dua byte untukkebanyakan instruksi dalam bahasa mesin (Gambar4.2)n 6-bit pertama dari byte pertama adalah binary op-

coden 2-bit sisanya menandakan direction (D) dari aliran

data dan indikasi apakah data adalah byte atauword (W)

Page 5: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 6: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

¡ Dengan memperhatikan Gambar 4.3 untuk pola bit biner dari byte opcode kedua (reg-mod-r/m)

n Field MOD ¡ Field MOD secara khusus digunakan dalam mode

pengalamatan (MOD) untuk instruksi yang dipilihdan memilih tipe pengalamatan dan apakahdisplacement hadir dengan tipe yang dipilih (Tabel4.1)

¡ Instruksi MOV AL, [DI], MOV AL, [DI+2] and MOV Al, [DI+1000H]!

Page 7: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 8: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Tugas-tugas Register¡ Tabel 4.3 berisi tugas-tugas register untuk field

REG dan field R/M (MOD=11)¡ Lihat Gambar 4.4

n Pengalamatan Memori R/M ¡ Apabila field MOD berisi 00, 01, atau 10, field

R/M akan mempunyai arti yang baru (Tabel 4.4)¡ Gambar 4.5 mengilustrasikan versi bahasa

mesin dari instruksi 16-bit MOV DL,DI atauinstruksi (8A15H)

Page 9: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 10: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 11: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 12: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 13: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Mode Pengalamatan Khusus¡ Hal ini terjadi ketika data memori

direfensikan hanya dengan mode displacement dari pengalamatan untukinstruksi 16-bit àMOV [1000H],DL

¡ Ketika instruksi hanya mempunyai 1 displacement, maka field MOD selalu 00 dan field R/M selalu 110 (lihat Gambar 4.6, 4.7)

Page 14: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 15: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 16: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Mode Pengalamatan 32-bit¡ Tabel 4.5 memperlihatkan pengkodean

untuk R/M digunakan untuk mode pengalamatan 32-bit secara khusus.

¡ Byte indeks berskala (R/M=100) terutamadigunakan ketika dua register ditambahkan ke dalam alamat memoridalam suatu instruksi (GAMBAR 4.8)

Page 17: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 18: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 19: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Instruksi Segera¡ Diasumsikan bahwa instruksi MOV WORD PTR

[BX +1000H], 1234H, instruksi inimemindahkan 1234H ke lokasi memoriberukuran-word yang dialamatkan olehpenjumlahan dari 1000H, BX, dan DS x 10H

¡ Instruksi 6-byte menggunakan 2-byte untukfield opcode, W, MOD, dan R/M, 2 dari 6-byte adalah data 1234H, dan 2 dari 6-byte adalahdisplacement dari 1000H (lihat gambar 4.9)

Page 20: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 21: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

n Instruksi MOV segmen¡ Bila isi register segmen dipindahkan oleh instruksi

MOV, PUSH, atau POP, maka sekumpulan bit register yang khusus (field REG) memilih register segmen (lihat tabel 4.6)

¡ Gambar 4.10 menunjukkan sebuah instruksi MOV BX,CS yang diubah menjadi biner

¡ Opcode untuk setiap tipe instruksi MOV berbedadibanding dengan instruksi MOV sebelumnya

¡ Segmen alamat dapat dipindah antara setiap register 16-bit alamat atau lokasi memori 16-bit.

Page 22: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 23: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

Sekilas Tentang MOV(lanjt.)

Page 24: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POPn Instruksi ini sangat penting karena kedua instruksi ini

berfungsi untuk menyimpan dan mengambil (ataumembuka) data dari memori stack LIFOn Mikroprosesor memiliki enam bentuk instruksi

PUSH dan POP yaitu : register, memory, immediate, segment register, flags, dan semuaregister.

n PUSH¡ Memindahkan 2 byte dari data ke stack¡ Instruksi PUSHA yang menyalin isi dari kumpulan

regiater internal kecuali register segmen ke stack.

Page 25: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP (lanjt.)

¡ Instruksi PUSHA (push all) menyalin isi register-register ke stack dengan urutan sebagai berikut : AX, BX, CX, DX, BX, SP, BP, SI, dan DI

¡ Instruksi PUSHF (push flags) menyalin isi register flag ke dalam stack

¡ Gambar 4.11 memperlihatkan operasi dari instruksiPUSH AX n AX --> SS:[SP-1] = AH, SS:[SP-2] = AL, dan

kemudian SP = SP - 2¡ Gambar 4.12 menggambarkan hasil dari instruksi

PUSHA

Page 26: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 27: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 28: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP (lanjt.)

¡ Tabel 4.7 berisi instruksi PUSH termasuk PUSHA dan PUSHF

n POP¡ Intruksi POP adalah kebalikan dari instruksi PUSH,

contohnya menghapus data dari stack danmenempatkannya pada register 16-bit register segmen atau lokasi memori 16-bit.

¡ POPF (pop flags) menghapus bilangan 16-bit daristack dan menempatkannya pada register flag

¡ POPFD menghapus bilangan 32-bit dari stack danmenempatkannya pada register flag 32-bit extended.

Page 29: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 30: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP (lanjt.)

¡ POPA (pop all) menghapus 16-bit dari stack danditempatkan pada register berikutnya, dalam urutanyang diperlihatkan sebagai berikut : DI, SI, BP, SP, BX, DX, CX, dan AX; ini merupakan urutan kebalikan daricara ditempatkan ke dalam stack pada instruksiPUSHA

¡ Gambar 4.13 menunjukkan bagaimana instruksi POP BX menghapus data dari stack dan menempatkannyapada register BX

¡ Tabel 4.8 memperlihatkan semua variasi opcode yang digunakan untuk instruksi POP

Page 31: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 32: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 33: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP (lanjt.)

n Inisialisasi Stack¡ Ketika area stack diinisialisasi, stack memuat

register SS dan SP; register SS biasanya dirancangdengan lokasi segmen stack yang bawah

¡ Gambar 4.14 memperlihatkan bagaimana nilai inimengakibatkan data dimasukkan ke bagian atassegmen stack dengan instruksi PUSH CX

Page 34: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi

PUSH/POP(lanjt.)

Page 35: Instruksi-Instruksi Pemindahan Datasupriyan.staff.gunadarma.ac.id/Downloads/files/9816/Bab+2+-+Mikro... · Sekilas Tentang MOV n Intruksi MOV diperkenalkan bersama-sama dengan instruksi