Content feed Comments Feed
YOUR ADSENSE CODE HERE ... 728 X 90

Pengaksesan Port Pararel

Sebelum mengakses port pararel, perlu diperkenalkan terlebih dahulu dua buah intruksi yang cukup berperan dalam transfer data antara mikroprosesor dan port pararel. Intruksi tersebut adalah IN dan Out. Berikut ini dalah sintaks kedua intruksi tersebut :IN RegAccu, NoPortOut NoPort, RegAccuRegAccu adalah register AL (bila datanya 8-bit) dan AX (bila datanya 16-bit). No Port adalah alamat yang diakses.Contoh :IN AL,25H ;mengambil data 8-bit...

Struktur Register

Procesor 8086/8088 mempunyai 14 register yang masing-masing 16 bit dan 9 flag. Untuk menggambarkannya, register dibagi menjadi 4 set, setiap 3 set berisi 4 register. Register ke 13 dinamakan INTRUCTION POINTER (IP), tidak langsung menempatkan ke programmer dan oleh karena itu men-set dengan sendirinya.Tiga set yang menyediakan tempat register adalah GENERAL, REGISTER, POINTER dan INDEX REGISTER, dan SEGMENT REGISTER. General register digunakan...

Sistem Bilangan

Hal yang paling dasar untuk mempelajari bahasa rakitan atau assembly yaitu perlunya kita mempelajari sistem bilangan, karena hal ini penting sekali dalam pengaksesan ke port (pangkalan) atau penggunaan sandi ASCII yang sering digunakan. Materi inI biasanya diajarkan pada praktikum sistem digital 1 di workshop Ilmu Komputer – UNPAK.Saya akan mencoba menguraikan suatu sistem bilangan yang paling banyak digunakan pada komputer

Bukan Narsis

Mau tau siapa ajah yang terlibat di workshop??? liat aja.....!!

Tabel Konversi Bilangan 8 Bit

Nah bagi teman-teman yang bingung untuk mengkonversikan sistem bilangan secara manual, kami team workshop telah mempersiapkan tabel konversi sistem bilangan untuk bilangan Hexa, Desimal, Oktal dan Biner. Silakan dilihat dan semoga bermanfaat.

IP ADDRESS

IP address atau alamat IP adalah suatu deretan bilangan unik yang terdiri dari 32 bit (digit biner) dan terbagi dalam 4 oktet yang digunakan untuk mengidentifikasi suatu host atau computer di internet. Suatu computer tidak akan pernah dapat terkoneksi atau menjadi bagian dari jaringan jika tidak memiliki IP address meskipun jaringan tersebut hanya berupa jaringan local dan tidak terhubung ke jaringan internet.

Motor Stepper Dan Drivernya

Motor Stepper atau motor langkah merupakan suatu jenis motor yang dapat digunakan untuk memindahkan sebuah benda atau beban dengan jarak perpindahan yang kecil. Berbeda halnya dengan motor-motor lain, yang bergerak dengan perputaran yang kontiniyu/mulus, motor langkah bergerak dengan perputaran yang kaku. Motor langkah bergerak dari posisi tertentu ke posisi berikutnya seperti gerak melangkah (step). Karena itulah motor ini...

Jual Beli Seputar Hardware Komputer

Postingan ini digunakan untuk Jual Beli segala jenis Hardware Komputer dari baru sampai sekend. Khusus untuk Anak-anak FMIPA UNPAK yang ingin menjual barang-barang seputar komputer baik baru maupun sekend bisa diiklankan disini tanpa dipungut biaya sepeserpun alias GRATIS. Untuk Informasi lebih lanjut silahkan Contact Administrator..!! Semoga dengan demikian bisa membantu mahasiswa khususnya FMIPA UNPAK yang sedang membutuhkan barang dengan harga miring dan mahasiswa yang ingin menjual barang-barang khususnya seputar hardware komputer.
CahayaBiru.com
Tampilkan postingan dengan label Mikroprosesor. Tampilkan semua postingan
Tampilkan postingan dengan label Mikroprosesor. Tampilkan semua postingan

Port Pararel

Diposting oleh Unknown 12.12.2008

Komunikasi paralel adalah komunikasi yang mengirimkan data secara bersamaan. Pada penggunaan komunikasi paralel semua bit dikirim secara bersamaan pada waktu yang sama. Oleh karena itu pada komunikasi ini kita membutuhkan banyak kabel. Hal memang sering menjadi kelemahan komunikasi paralel akibat banyaknya kabel yang dibutuhkan, dan panjang kabel ini tidak boleh lebih dari 20 m, untuk menjaga keaslian data. Namun kelebihan komunikasi paralel adalah lebih cepat dan kapasitas yang dibawa juga banyak serta pemrograman yang lebih mudah.

Komunikasi paralel yang digunakan adalah komunikasi paralel lewat kabel data untuk printer (saat mengeluarkan data). Pada keadaan normal (tidak aktif) tegangan pada pin-pin ini adalah 0 volt, namun bila kita beri high, maka tegangannya akan berubah menjadi 5 volt. Pada pelatihan ini, komunikasi paralel hanya digunakan untuk mengeluarkan data, yang bisa berguna untuk menyalakan relay atau stepper motor untuk menjalankan atau mengontrol hardware.

Pada port paralel ada 3 jalur data, yaitu :
1. Jalur kontrol
Memiliki arah bidirectional

2. Jalur status
Memiliki satu arah, yaitu arah input.

3. Jalur data
Memiliki 2 arah. Dapat juga berfungsi sebagai pengirim Address dan data, masing-masing 8 bit, dimana keduanya melakukan transfer data dengan protokol handshaking serta diakses dengan register yang berbeda.
Bila kita menggunakan jalur LPT1 maka alamat yang ditentukan oleh PC adalah:


Fungsi pin-pin dari db25

Port paralel dapat mentransmisi 8 bit data dalam sekali detak. Tata-letak dari ke-dua puluh lima pin (DB 25) parallel printer port, diperlihatkan dalam Gambar.

Untuk kirim data biner 8 bit ke port, dapat diperintah dengan menggunakan program C. Misalnya, untuk xxxxxxxxxxxxxxxx pertama datanya adalah 1 hex (biner; 0000001), sedangkan data biner 10000000 (80 hex / 128 dec) digunakan untuk menyalakan LED kedelapan.

Daftar berikut, dapat digunakan sebagai acuan.
DataPort Bit 0 = LED1 = 00000001 bin = 1 hex = 1 dec
DataPort Bit 1 = LED2 = 00000010 bin = 2 hex = 2 dec
DataPort Bit 2 = LED3 = 00000100 bin = 4 hex = 4 dec
DataPort Bit 3 = LED4 = 00001000 bin = 8 hex = 8 dec
DataPort Bit 4 = LED5 = 00010000 bin = 10 hex = 16 dec
DataPort Bit 5 = LED6 = 00100000 bin = 20 hex = 32 dec
DataPort Bit 6 = LED7 = 01000000 bin = 40 hex = 64 dec
DataPort Bit 7 = LED8 = 10000000 bin = 80 hex = 128 dec

Sebelum mengakses port pararel, perlu diperkenalkan terlebih dahulu dua buah intruksi yang cukup berperan dalam transfer data antara mikroprosesor dan port pararel. Intruksi tersebut adalah IN dan Out. Berikut ini dalah sintaks kedua intruksi tersebut :

IN RegAccu, NoPort
Out NoPort, RegAccu

RegAccu adalah register AL (bila datanya 8-bit) dan AX (bila datanya 16-bit). No Port adalah alamat yang diakses.

Contoh :
IN AL,25H ;mengambil data 8-bit dari port beralamat 25h
IN AX,50H ;mengambil data 16-bit dari port beralamat 50h
OUT 25h,AL ;mengirimkan data 8-bit dari port beralamat 25h
OUT 50h,AL ;mengirimkan data 16-bit dari port beralamat 50h

Alamat port yang akan diakses, dapat dituliskan secara langsung (seperti pada contoh diatas) bila alamatnya di bawah 255 (FFh). Bila alamat port yang akan diakses diatas 255, alamat port tersebut harus dimasukan ke dalam register DX terlebih dahulu. Berikut ini adalah contoh pemakaian IN:

MOV DX,378h ;memindahkan alamat port pararel ke register DX
OUT DX,AL ;mengambil data 8-bit dari port pararel

Contoh berikut ini adalah untuk pemakaian OUT:

MOV DX,378h ;memindahkan alamat port pararel ke register DX
OUT DX,AL ;mengirimkan data 8-bit ke port pararel

Dalam pengendalian gerak motor stepper, yang banyak digunakan adalah instruksi OUT, karena pengendalian motor stepper lebih banyak berhubungan dengan pengiriman sinyal kendali daripada pembawa data.

Berikut ini contoh pemrograman debug untuk mengendalikan motor stepper berputar ke kanan pada port pararel.


STRUKTUR REGISTER

Diposting oleh Unknown 9.14.2008


Procesor 8086/8088 mempunyai 14 register yang masing-masing 16 bit dan 9 flag. Untuk menggambarkannya, register dibagi menjadi 4 set, setiap 3 set berisi 4 register. Register ke 13 dinamakan INTRUCTION POINTER (IP), tidak langsung menempatkan ke programmer dan oleh karena itu men-set dengan sendirinya.

Tiga set yang menyediakan tempat register adalah GENERAL, REGISTER, POINTER dan INDEX REGISTER, dan SEGMENT REGISTER. General register digunakan pertama kali untuk menampung operand operasi aritmatika dan logika. Pointer dan index register digunakan sebagai tempat alamat offset tanpa segment. Segment register digunakan untuk merinci permulaan alamat segment.


1. GENERAL PURPOSE REGISTER

General register 8086/8088 adalah register 16 bit, terdiri dari AX, BX, CX, dan DX. Sebagai pilihan, bagian tertinggi (AH, BH, CH, dan DH yang masing-masing 8 bit) atau bagian terendah (AL, BL, CL, dan DL yang masing-masing 8 bit) dari setiap register dapat dialamatkan tersendiri untuk operasi byte.

1. Akumulator
atau register AX berfungsi sebagai akumulator dan berhubungan dengan jenis-jenis operasi khusus seperti Aritmatika, In, Out, Shift, Logik, rotate dan operasi desimal berkode biner

2. Base register BX
dapat dipakai sebagai register base untuk mereferensikan alamat memori. Register ini dipisahkan menjad BH dan BL yang masing 8 bit. Operasi yang dapat dilakukan adalah route, aritmatik, shift dan logic.

3. Counter register CX
dipakai sebagai pencacah implisit dengan intruksi tertentu, miaslnya terhadap perintah LOOP dan operasi string. Cacahan naik bila direction flag 0 dan cacahan turun jika diection flag adalah Register CX dipishkan atas dua bagian yaitu CH dan CL yang masin-masing 8 bit.

4. Data register DX
dipakai untuk menyimpan alamat port I/O selama operasi input dan ouput dan tertentu, baik alamat port 8 bit maupun alamat port 16 bit. Digunakan juga dalam operasi-operasi perkalian untuk menyimpan sebagian dari hasil kali 32 bit atau dalam operasi pembagian untuk menyimpan suatu nilai sisa. Register ini dipisahkan menjadi DH dan DL masing-masing 8 bit

2. POINTER DAN INDEX REGISTER
Register ini menagani 16 bit yang biasnya mengakses memori operand. Register ini terdiri dari SP, BP, SI dan DL. Register BP dan SP digunakan untuk menunjuk ke stack.

1. Register SP secara
nyata digunakan untuk operasi stack seperti menyimpan alamat return sewaktu memanggil subroutine. SP merupakan register yang secara implisit digunakan oleh intruksi PUSH dan POP yang menyimpan dan mendapatkan kembali data dari stack.

2. Register BP
digunakan untuk penunjuk base dalam stack yang disediakan sebagai daerah penyimpanan data. BP digunakan juga dalam komunikasi dengan bahasa computer seperti bahasa C dengan Asembler.

3. Register SI dan
register DI digunakan untuk menyimpan nilai-nilai offset dalam segmen data memori pada saat bersangkutan. Kapasitas penuh daripada register ini akan menjadi jelas pada bahasan modus pengalamatan.

4. Register IP
merupakan register pasangan CS yang merupakan register utama untuk menunjukan baris perintah program. Pada saat program dijalankan, IP akan langsung menunjuk pada awal program. Pada saat pertama program dijalankan, IP akan lansung meunjuk pada awal program. Code segment dan Instructio Pointer berfungsi sebagai program counter dan ditulis dengan format CS : IP. Pada umumnya semua kode bahasa mesin ditaruh di Code Segment, semua data ditaruh pada Data Segment sedangkan operasi PUSH dan POP disediakan tempat di Stack Segment.

3. REGISTER SEGMENT
Register in terdiri dari 16 bit, yaitu : CS (Code Segment), DS (Data Segment), SS (Stack Segment) dan ES (Extra Segment). Suatu instruksi spesifik offset ke dalam segment dan segment register merinci 4 segment. Kita bias menggnakan yang mana saja untuk kita pilih. Hal ini tergantung pada bagaimana offset digunakan. Suatu offset mungkin merinci instruksi berikutnya dilaksanakan atau mungkin merinci suatu operand untuk suatu instruksi.

1. Register CS,
digunakan untuk mencatat segment dari kode rogram atau instruksi.

2. Register DS,
digunakan untuk menyimpan alamat dari segment letak data.

3. Register SS untuk.
menyimpan alamat segment memori yang dipergunakan menjadi stack.

4. Register ES.
digunakan untuk menyimpan alamat segment tambahan, misalnya alamta display, alamat sistem operasi dan sebagainya yang diinginkan oleh pemrogram.

4. FLAG REGISTER
8088/8086 mempunyai status flag 1 bit dan 3 kontrol flag yang dikonfigurasikan di dalam register 16 bit. Byte terendah dari flag adalah sebuah copy daripada register flag 8080 yang diakomodasikan ke 8086/8088. Flag ini digunakan ke record prosesor informasi status (status flag) atau ke control flag. Flag status umumnya disusun sebuah pengeksekusian aritmatika atau instruksi logika ke bayangan yang pasti pada saat operasi.
Berikut ini adalah jenis-jenis flag yang ada, yaitu :

Status flag yang mencopy dari 8080 menjadi 8088 adalah

1. CF (Cary Flag),
dimana sebuah cary out atau sebuah borrow, jika hasilnya adalah bit tertinggi (nilai 1)

2. FF (Parity Flag),
dimana menset (nilai 1) jika instruksi menghasilkan sebuah angka genap (even parity).

3. AF (Auxiliary Cary Flag),
digunakan oleh instuksi pengaturan desimal.

4. ZF (Zero Flag),
dimana menset (nilai 1) jika hasil intruksi adalah 0.

5. SF (Sign Flag),
dimana menset (nilai 1) jika hasilnya adalah negatif dan bernilai 0 jika positif.

Status flag yang ditambahkan pada 8088 adalah.

6. OF (Overflow Flag),
menunjukan sebuah operasi secara tidak benar yaitu merubah hasil daripada tanda bit. Contoh : menambah 2 angka positif dengan hasilnya negatif , Missal : +127 (7F hex) + 2 (02 hex) = -127 (81 hex) dan terjadi overflow untuk operasi aritmatika tersebut.

7. IF (interuft-enable Flag),
dimana jika diset (nilai 1) dapat melakukan interupsi dan sebliknya bila bernilai 0, maka interupsi tidak dapat dilakukan.

8. DF (Direction Flag),
di pergunakan untuk mengontrol arah daripada operasi string. Jika DF bernilai 1 maka register SI dan DI nilainya akan menurun (decrement). Sedang bila bernilai 0 maka register SI dan DI akan meningkat (increment). Pada program assembler, register ini digunakan untuk instruksi-instruksi MOVS, MOVSB, MOVSW, CMPS, CMPSB, dan CMPSW.

9. TF (Trap Flag),
dimana ditempatkan dalam single step mode untuk keperluan debug.

--- prof ---


Masukkan Code ini K1-41217Y-4
untuk berbelanja di KutuKutuBuku.com
GrowUrl.com - growing your website