Friday, May 6, 2011

Tugas ORKOM

Tugas Individu


NAMA : Indriyani
NPM : 10120022
KELAS : B

.MODEL SMALL ; Untuk menandakan memory yang digunakan
.CODE ; Untuk Memulai menadakan untuk menggunakan code segment dan menyimpan program yang dijalankan
ORG 100h ; Untuk memulai pada offset ke100h dan menyediakan 100byte kosong
TData :JMP Proses ; Melompat pada proses
T_Enter EQU 0Dh
Kal0 DB 'Masukkan Input : $'
Kal1 DB 13,10,'Keluaran output : $'
Buffer DB 23,?,23 DUP(?)
Proses :
MOV AH,09 ; Servis ke9
LEA DX,Kal0 ; Ambil Almat offset Kal0
INT 21h ; Cetak kalimat Kal0
MOV AH,0Ah ; Servis Input kalimat
LEA DX,Buffer ; DX menunjuk pada offset Buffer
INT 21h ; Input kalimat !
MOV AH,09 ; Servis ke9
LEA DX,Kal1 ; Ambil Alamat offset Kal1
INT 21h ; Cetak kalimat Kal1
LEA BX,Buffer+2 ; BX menunjuk byte ke 3 Buffer
Ulang:

CMP BYTE PTR [BX],T_Enter ; Apakah karakter Enter?
JE EXIT ; Ya! Lompat ke Exit
MOV DL,[BX] ; Masukkan karakter pada DL
MOV AH,02 ; Servis cetak karakter
INT 21h ; Cetak karakter
INC BX ; BX := BX+1
JMP Ulang ; Lompat ke Ulang
EXIT: INT 20h ; Kembali ke DOS !
END TData

Alur Pemrosesan Data



Input >>> i/o >>> proses >>> memori >>> storage >>> memori >>> proses >>> i/o >>> output


Keterangan:

Keterangan:
Input : data yang akan di proses atau dibuat.
I/O : Input / Output.
Proses : Pengolahan data yang dimasukkan.
Memori : Tempat menyimpan data sementara pada saat data diproses.
Storage : Tempat menyimpan data secara permanen seteah diproses.
Output : Hasil dari proses yang berupa tampilan, suara, cetakan.
Sistem komputer memiliki siklus pengolahan yang pasti. Siklus pengolahan itu sendiri mengacu kepada makna dari arti komputer itu sendiri. Ada tiga pokok dalam siklus pengolahan data dengan menggunakan komputer tersebut, yaitu input, proses, dan output. Sedangkan untuk proses sendiri, pemroses dibantu oleh beberapa bagian lain, yaitu program serta penyimpan (storage). Input Merupakan aktifitas pemberian data kepada komputer, dimana data tersebut merupakan masukan bagi komputer. Agar data dapat diterima oleh komputer dengan baik, komputer memiliki peralatan yang berfungsi untuk hal ini, yang disebut dengan input device . Pada komputer, input device ini juga bermacam-macam, tergantung bagaimana proses input tersebut dilaksanakan. Bermacam-macam input device yang digunakan oleh komputer, contohnya adalah keyboard untuk mengetikkan informasi, pembaca kode batang pada transaksi di supermarket, kamera untuk menangkap gambar, dan lain sebagainya. Masukan yang didapatkan oleh input device tersebut informasinya dikirimkan ke pemroses (otaknya komputer) untuk diproses lebih lanjut, diabaikan atau informasi tersebut disimpan dalam media penyimpanan. Proses Setiap masukan yang disampaikan kepada komputer akan masuk ke pemroses, pemroses ini dikenal juga dengan nama processor . Pemroses ini bisa disebut dengan otaknya komputer. Pemroses ini akan menentukan akan diapakan informasi yang masuk tersebut. Jika diolah lebih lanjut, maka data tersebut diolah sesuai dengan ketentuan yang telah disusun sedemikian kedalam otak komputer. Ketentuan yang telah disusun ini adalah instruction set. Instruction set ini merupakan format baku perintah yang dapat dilaksanakan oleh pemroses. Pemroses memiliki hubungan dengan media input, program, storage serta media output. Masing-masing akan dikontak oleh pemroses sesuai dengan tugasnya masing-masing. Pemroses ini hanya berfungsi untuk menjalankan perintah yang diterimanya dari program. Tindak lanjut dari masing-masing perintah, katakanlah menampilkan data terebut ke monitor atau ke printer, maka pemroses akan mengirimkan lagi hasil olahannya ke media yang dituju. Dengan mengirimkan data ke media yang dituju, maka berarti pemroses menyerahkan tugasnya kepada media tersebut sambil mengirimkan data-data yang diperlukan oleh media yang dituju serta instruksi yang diminta untuk dilaksanakan oleh media yang dituju itu tadi. Bus Bus merupakan jalur penghubung antar alat pada komputer yang digunakan sebagai media dalam proses melewatkan data pada suatu proses. Bus ini bisa dianggap sebagai sebuah pipa, dimana pipa atau saluran tersebut digunakan untuk mengirimkan dan menerima informasi antar alat yang dihubungkannya. Pada sistem komputer, bus ini termasuk perangkat internal, kecepatan pengiriman informasi melalui bus ini dilakukan dengan kecepatan tinggi. Program Program merupakan kumpulan instruction set yang akan dijalankan oleh pemroses, yaitu berupa software. Bagaimana sebuah sistem komputer berpikir diatur oleh program ini. Program inilah yang mengendalikan semua aktifitas yang ada pada pemroses. Program berisi konstruksi logika yang dibuat oleh manusia, dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada instruction set. Storage Dalam menjalankan proses, selain proses diatur oleh program, pemroses juga memiliki akses ke media penyimpan yang disebut dengan storage. Storage ini berfungsi untuk menyimpan berbagai informasi yang dibutuhkan untuk menjalankan fungsi pemroses, baik untuk penyimpan sementara maupun untuk jangka panjang. Pemroses melakukan tugasnya sesuai dengan kendali yang ada pada program. Proses untuk mengambil data atau menyimpan data pada storage ini dilaksanakan oleh pemroses sesuai dengan perintah yang diterima pemroses dari program yang sedang ia jalankan. Output Merupakan aktifitas menerima data dari hasil pengolahan pada bagian pemroses. Jika terdapat data pada aktifitas output ini, berarti pemroses menyerakan tugas selanjutnya kepada bagian ini. Tentu saja pada bagian ini diperlukan juga peralatan yang bekerja, dimana peralatan terebut disebut dengan output device. Pada komputer contoh output device ini adalah printer (pencetak). Ketika data output dari pemroses diterimanya maka printer akan melaksanakan tugas yang diterima dari pemroses tadi.

Aritmatika

Konversi bilangan biner ke desimal











Konversi bilangan desimal ke biner











Konversi bilangan oktal ke desimal











Konversi bilangan desimal ke oktal












Konversi bilangan oktal ke biner












Konversi bilangan desimal ke heksadesimal











Konversi bilangan biner ke heksadesimal











Konversi bilangan heksadesimal ke desimal
Untuk proses konversi ini, caranya sama saja dengan proses konversi biner ke desimal, hanya saja kali ini perpangkatan yang digunakan adalah perpangkatan 16, bukan perpangkatan 2. Sebagai contoh, saya akan melakukan konversi bilangan heksa C816 ke bilangan desimal. Maka saya ubah dulu susunan bilangan heksa tersebut, mulai dari kanan ke kiri, sehingga menjadi sebagai berikut :
8
C
dan kemudian dilakukan proses perkalian dengan perpangkatan 16, sebagai berikut :
8 x 160 = 8
C x 161 = 192 ——> ingat, C16 merupakan lambang dari 1210
Maka diperolehlah hasil konversinya bernilai 8 + 192 = 20010.



TABEL KONVERENSI

Macam-Macam Register


1. Segmen Register
Register-register dalam kelompok ini secara umum digunakan untuk menunjukkan alamat dari suatu segmen
  • CS(Code Segment) digunakan untuk menunjukkan tempat dari segmen yang sedang aktif
  • SS(Stack Segment) menunjukkan letak dari segmen yang digunakan oleh stack.
  • DS(Data Segment) biasanya digunakan untuk menunjukkan tempat segmen dimana data-data pada program disimpan.
  • Register ES(Extra Segment), sesuai dengan namanya adalah suatu register bonus yang tidak mempunyai suatu tugas khusus.
Pada prosesor 80386 terdapat tambahan register segment 16 bit, yaitu FS dan GS.
Yang dimaksud dari FS
F segment (FS) = pointer ke data ekstra lebih ( F muncul setelah E )
ES sendiri adalah suatu register bonus yang tidak mempunyai suatu tugas khusus . biasanya digunakan untuk menunjukkan suatu alamat di memori .
Yang dimaksud dari GS
G segment (GS) = pointer ke data tambahan masih lebih ( G manual setelah F )

2. POINTER dan INDEX REGISTER
Secara umum digunakan sebagai penunjuk atau pointer terhadap suatu lokasi di memory.
  • SP(Stack Pointer) yang berpasangan dengan register segment SS(SS:SP) digunakan untuk mununjukkan alamat dari stack.
  • BP(Base Pointer)yang berpasangan dengan register SS(SS:BP) mencatat suatu alamat di memory tempat data.
  • SI(Source Index) dan register DI(Destination Index) biasanya digunakan pada operasi string dengan mengakses secara langsung pada alamat di memory yang ditunjukkan oleh kedua register ini.
Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu ESP,EBP,ESI dan EDI
ESP adalah stack pointer register yang digunakan untuk menyimpan alamat dari stack
EBP adalah base stack pointer register yang digunakan untuk menyimpan alamat dasar stack
ESI adalah sumber register indeks source atau indeks register yang digunakan untuk string dan menyalin memory array
EDI adalah tujuan register indeks destination index register yang digunakan untuk string , menyalin memory array dan pengaturan dan untuk jauh pointer pengalamatan dengan ES

3. GENERAL PURPOSE REGISTER
Secara umum register-register dalam kelompok ini dapat digunakan untuk berbagai keperluan, walaupun demikian ada pula penggunaan khusus dari masing-masing register ini yaitu :
  • Register AX, secara khusus digunakan pada operasi aritmatika terutama dalam operasi pembagian dan pengurangan.
  • Register BX, biasanya digunakan untuk menunjukkan suatu alamat offset dari suatu segmen.
  • Register CX, digunakan secara khusus pada operasi looping dimana register ini menentukan berapa banyaknya looping yang akan terjadi.
  • Register DX, digunakan untuk menampung sisa hasil pembagian 16 bit.


Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu EAX,EBX,ECX dan EDX
EAX (accumulator register) semua perhitungan utama berlangsung di EAX , sehingga mirip dengan sebuah register di akumulator khusus
EBX (base register) dalam mode 32-bit register dasar itu berfungsi sebagai pointer . sekarang jadi terdapat ruang untuk penyimpan extra
ECX (counter register) register terhitung counter wp universal
EDX (data register) data register adalah eksistensi ke akumulator . hal ini terpenting dan paling berguna untuk menyimpan data yang terhubung dengan perlindungan pada akumulator saat ini .

4. INDEX POINTER REGISTER
Register IP berpasangan dengan CS(CS:IP) menunjukkan alamat dimemory tempat dari intruksi(perintah) selanjutnya yang akan dieksekusi. Register IP juga merupakan register 16
bit.

Pada prosesor 80386 digunakan register EIP yang merupakan register 32 bit
EIP adalah pointer indeks yang digunakan untuk menyimpan offset intruksi berikutnya , hal ini hanya dapat dibaca .

5. FLAGS REGISTER


  • NT : Untuk mengindikasikan apakah operasi yang sedang dilakukan digandeng ( nested ) dengan operasi lain pada operasi protected mode.
  • IOPL : Untuk operasi protected mode yang digunakan untuk memilih tingkat keistimewaan piranti masukan – keluaran .
  • Overflow Flags) : Untuk menunjukkan sebuah operasi yang tidak benar yaitu merubah hasil dari pada tanda bilangan .
  • DF (Direction Flags) : Mengontrol arah dari operasi string .
  • IF (Interupt Flags) : jika setting nilai 1 dapat melakukan operasi interupsi dan sebaliknya jika bernilai 0 , maka interupsi tidak dapat dilakukan .
  • TF (Trap Flags) : Di tempatkan pada single step mode untuk keperluan debug .
  • SF (Sign Flags) : Mensef (nilai 1) jika hasilnya adalah negatif dan bernilai 0 jika positif.
  • ZF (Zero Flags) : Mensef (nilai 1) jika hasilnya adalah negatif dan bernilai 0 jika positif.
  • AF (Auxilary Flags) : Digunakan oleh intruksi pengaturan desimal .
  • PF (Parity Flags) : Mensef (nilai 1) jika hasilnya sebuah angka genap (even parity).
  • CF (Carry Flags) : Dimana sebuah carry out atau borrow jika hasilnya adalah bit tertinggi (nilai 1)

Penggunaan TASM (Turbo Assembler)


Source file ASCII yang telah anda ketikkan perlu dicompile kebentuk file object dengan extensi .OBJ, dari file object inilah nantinya dapat dijadikan kebentuk file .EXE atau .COM.
Untuk mengcompile source file, misalnya file TEST.ASM menjadi file object dengan extensi .OBJ bisa anda gunakan file TASM.EXE dengan mengetikkan teks yang bercetak miring atau Italic ( i ) :
Cukup ketikkan sama seperti pada gambar brikut ini :
Gambar 01 : Perintah yang digunakan untuk eksekusi file .asm

C:\>tasm test.asm/z
Turbo Assembler Version 2.0 Copyright (c) 1988, 1992 Borland International
Assembling file : test.asm
Error messages : None
Warning messages : None
Passes : 1
Remaining memory : 307k
C:\>dir test.*
Volume in drive C: is Zero
Directory of C:\
TEST.OBJ 128 02-05-10 10:42p
TEST.ASM 128 02-05-10 10:41p
2 file(s) 246 bytes
1,085,952 bytes free
atau untuk lebih jelasnya dapat dilihat pada layar screen shoot berikut ini :
Gambar 02: Perintah Tasm untuk melihat perintah yang dapat digunakan

Gambar diatas merupakan perintah – perintah yang dapat digunakan dalam program TASM (Turbo Assembler)
dengan cara mengetikan perintah dibawah ini :
C :\ Tasm

Penggunaan TLINK (Turbo Link)

File object yang telah terbentuk dengan TASM, belum dapat dieksekusi secara langsung. Untuk membuat file object ke bentuk file yang dapat dieksekusi(ektensi .COM atau .EXE) bisa anda gunakan file TLINK.EXE. Bila source program yang anda buat dalam bentuk EXE maka untuk membentuk file dengan ektensi EXE bisa anda ketikkan :

Gambar 01 : Perintah yang digunakan untuk file yang telah di TASM - kan

C:\>tlink test
Turbo Link Version 3.0 Copyright (c) 1987, 1990 Borland International
Bila source program yang dibuat adalah file COM, maka bisa anda ketikkan :
Gambar 02 : Perintah yang digunakan untuk file yang telah di TASM - kan

C:\>tlink test/t
Turbo Link Version 3.0 Copyright (c) 1987, 1990 Borland International
Berikut ini ialah instruksi – instruksi yang dapat dilakukan dalam pengeksekusian file dengan menggunakan program TLINK (Turbo Link) yang terdapat pada gambar dibawah ini :
Gambar 03 : Instruksi - instruksi yang terdapat pada TLINK

Cara melihat instruksi apa saja yang bisa dilakukan dengan TLINK ini cukup ketikkan :
C:\ tlink


Interrupt

00h Divide By Zero :

Jika terjadi pembagian dengan nol maka proses akan segera dihentikan
01h (Single Step) :
Untuk melaksanakan / mengeksekusi instruksi satu persatu
02h Non Maskable Interupt (NMI) :
Pelayanan terhadap NMI / non Maskable interupt yaitu interupt yang tak dapat dicegah
03h (Break point) :
Jika suatu program menyebabkan overflow play menjadi 1 maka interrupt ini akan menjadi pencegahan dan memberi tanda eror
04h (Arithmatic Overflow) :
Berguna untuk menghandel operasi aritmatika apabila terjadi overflow pada proses logika aritmatic
05h (Print Screen) :
Berguna untuk mencetak layar teks (screen capture)
06h (Reserved) :
Ruang memori yang digunakan untuk cadangan
07h (Reserved) :
Ruang memori yang digunakan untuk cadangan
08h Clock Tick(Timer) :
Digunakan untuk menghitung waktu pada saat operasi interupt ini dijalankan
09h Keyboard :
Menerima data yang berasal atau inputan yang ditekan dari keyboard
0Ah I/O Channel Action :
Interupt ini digunakan untuk aktifitas channel input / output
0Bh COM 1 (serial 1) :
Digunakan untuk menangani masukan dan kekuasaan dan alat komunikasi
0Ch COM 2 (serial 2) :
Digunakan untuk menangani masukan dan kekuasaan dan alat komunikasi
0Dh Fixed Disk :
Untuk menangani printer alternante yang bersifat media penyimpan yang sudah baku
0Eh Diskette :
Interupt yang digunakan merupakan suatu generator disk penyimpanan
0Fh LPT 1 (Parallel 1) :
Merupakan suatu port generator port pada printer atau media hub lainnya yang menggunakan port LPT 1
10h Video Service :
Interupt yang digunakan untuk menentukan tampilan pada layar screen yang berfungsi menampilkan grafik
11h Equipment List/Check :
Interupt yang digunakan untuk peralatan yang akan dicheck
12h Memory Size :
Interupt yang digunakan untuk mencheck besar memori
13h Disk Service :
Interupt yang digunakan untuk akses hardisk / diskete
14h Communication (RS-232) :
Interupt yang digunakan untuk konunikasi dengan serial port
15h Cassette Service :
Interupt yang digunakan untuk akses ke pita service
16h Keyboard Service :
Interupt yang digunakan untuk menentukan karakter dari tombol keyboard
17h Printer Service :
Interupt untuk akses ke Printer (Service) untuk metode pencetakan
18h ROM Basic :
Interupt yang digunakan untuk fungsi BASIC pada komputer
19h Bootstrap Loader :
Interupt yang digunakan untuk membaca boot sector dari disket atau harddisk
1Ah BIOS time & date :
Interupt yang digunakan untuk mengakses waktu dan tanggal / hari yang terdapat pada BIOS
1Bh Control Break :
Interupt yang digunakan dan berisi alamat tempat keyboard menekan tombol (Ctrl + C) untuk keperluan menghentikan proses (Break)
1Ch Timer Tick :
Interupt yang digunakan untuk menghitung detik dari komputer
1Dh Video Initialization :
Interupt yang digunakan untuk inisialisasi video, terdapat parameter dari 6845 video control
1Eh Disk Parameters :
Interupt yang digunakan untuk parameter pada disk parameter dari dan ke disk drive yang digunakan
1Fh Graphics Char :
Interupt yang digunakan untuk menampilkan karakter – karakter yang ditampilkan oleh komputer

No comments: