Program Bahasa Perhimpunan 8086 Mudah dengan Penjelasan

Cuba Instrumen Kami Untuk Menghapuskan Masalah





Pengaturcaraan peringkat pemasangan sangat penting untuk peringkat rendah sistem tertanam reka bentuk digunakan untuk mengakses arahan pemproses untuk memanipulasi perkakasan. Ini adalah bahasa tingkat mesin yang paling primitif digunakan untuk membuat kod yang cekap yang menggunakan lebih sedikit bilangan pusingan jam dan mengambil lebih sedikit memori dibandingkan dengan bahasa pengaturcaraan peringkat tinggi . Ini adalah bahasa pengaturcaraan yang berorientasikan perkakasan yang lengkap untuk menulis program yang mesti diketahui oleh pengaturcara mengenai perkakasan tertanam. Di sini, kami menyediakan asas pengaturcaraan peringkat pemasangan 8086.

Pengaturcaraan Tahap Perhimpunan 8086

Pengaturcaraan Tahap Perhimpunan 8086



Pengaturcaraan Tahap Perhimpunan 8086

The bahasa pengaturcaraan perhimpunan adalah bahasa peringkat rendah yang dikembangkan dengan menggunakan mnemonics. Mikrokontroler atau mikropemproses hanya dapat memahami bahasa binari seperti 0 atau 1 oleh itu assembler menukar bahasa pemasangan ke bahasa binari dan menyimpannya memori untuk melaksanakan tugas. Sebelum menulis program, pereka tertanam mesti mempunyai pengetahuan yang mencukupi mengenai perkakasan pengawal atau pemproses tertentu, jadi pertama-tama kita harus mengetahui perkakasan pemproses 8086.


Perkakasan Pemproses

Perkakasan Pemproses



8086 Senibina Pemproses

8086 adalah pemproses yang diwakili untuk semua peranti periferal seperti bus bersiri, dan RAM dan ROM, peranti I / O dan sebagainya yang semuanya disambungkan secara eksternal ke CPU dengan menggunakan bus sistem. Mikropemproses 8086 mempunyai Senibina berasaskan CISC , dan mempunyai periferal seperti 32 I / O, Komunikasi bersiri , kenangan dan pembilang / pemasa . Mikropemproses memerlukan program untuk menjalankan operasi yang memerlukan memori untuk membaca dan menyimpan fungsinya.

8086 Senibina Pemproses

8086 Senibina Pemproses

Pengaturcaraan tahap pemasangan 8086 didasarkan pada daftar memori. Daftar adalah bahagian utama dari mikropemproses dan pengawal yang berada di dalam memori yang menyediakan kaedah mengumpulkan dan menyimpan data yang lebih pantas. Sekiranya kita ingin memanipulasi data ke pemproses atau pengawal dengan melakukan pendaraban, penambahan, dan lain-lain, kita tidak dapat melakukannya secara langsung dalam memori di mana memerlukan daftar untuk memproses dan menyimpan data. Mikroprosesor 8086 mengandungi pelbagai jenis daftar yang dapat dikelaskan mengikut arahan mereka seperti

Daftar tujuan am : CPU 8086 terdiri dari 8 register tujuan umum dan setiap register memiliki namanya sendiri seperti yang ditunjukkan dalam gambar seperti AX, BX, CX, DX, SI, DI, BP, SP. Ini semua adalah register 16-bit di mana empat register dibahagikan kepada dua bahagian seperti AX, BX, CX, dan DX yang digunakan terutamanya untuk menyimpan nombor.

Daftar tujuan khas : CPU 8086 telah terdiri dari 2- daftar fungsi khas seperti daftar IP dan bendera. Daftar IP menunjukkan arahan pelaksanaan semasa dan selalu berfungsi untuk mengumpulkan dengan daftar segmen CS. Fungsi utama register bendera adalah untuk mengubah operasi CPU setelah fungsi mekanikal selesai dan kita tidak dapat mengakses secara langsung
Daftar segmen: CPU 8086 terdiri dari daftar segmen 4 seperti CS, DS, ES, SS yang terutama digunakan untuk menyimpan data dalam daftar segmen dan kita dapat mengakses blok memori menggunakan register segmen.


Program Bahasa Perhimpunan Ringkas 8086

Pengaturcaraan bahasa perhimpunan 8086 mempunyai beberapa peraturan seperti

  • Tahap pemasangan pengaturcaraan 8086 kod mesti ditulis dengan huruf besar
  • Label mesti diikuti dengan titik dua, contohnya: label:
  • Semua label dan simbol mesti bermula dengan huruf
  • Semua komen ditaip dengan huruf kecil
  • Baris terakhir program mesti diakhiri dengan arahan TAMAT

8086 pemproses mempunyai dua arahan lain untuk mengakses data, seperti WORD PTR - untuk kata (dua bait), BYTE PTR - untuk bait.

Op-Kod dan Operan

Op-Kod dan Operan

Kod op: Satu arahan dipanggil sebagai op-code yang dapat dijalankan oleh CPU. Di sini arahan ‘MOV’ disebut sebagai op-code.

Operan: Data sepotong disebut operan yang dapat dikendalikan oleh op-code. Contohnya, operasi penolakan dilakukan oleh operan yang ditolak oleh operan.
Sintaks: SUB b, c

8086 program bahasa pemasangan mikropemproses

Tulis Program Untuk Membaca Watak Dari Papan Kekunci

Subprogram input papan kekunci MOV ah, 1h //
INT 21h // input watak
// watak disimpan dalam al
MOV c, al // salin watak dari alto c

Tulis Program Untuk Membaca dan Menampilkan Watak

Subprogram input papan kekunci MOV ah, 1h //
INT 21h // membaca watak menjadi al
MOV dl, al // salin watak ke dl
MOV ah, subprogram output watak 2h // watak
INT 21h // watak watak dalam dl

Tulis Program Menggunakan Daftar Tujuan Umum

ORG 100jam
MOV AL, VAR1 // periksa nilai VAR1 dengan memindahkannya ke AL.
LEA BX, VAR1 // dapatkan alamat VAR1 di BX.
MOV BYTE PTR [BX], 44h // ubah kandungan VAR1.
MOV AL, VAR1 // periksa nilai VAR1 dengan memindahkannya ke AL.
BETUL
VAR1 DB 22jam
TAMAT

Tulis Program Untuk Memaparkan Rentetan Menggunakan Fungsi Perpustakaan

sertakan emu8086.inc // Pengisytiharan makro
ORG 100jam
CETAK ‘Hello World!’
GOTOXY 10, 5
PUTC 65 // 65 - adalah kod ASCII untuk ‘A’
PUTC ‘B’
RET // kembali ke sistem operasi.
TAMAT // arahan untuk menghentikan penyusun.

Arahan Aritmetik dan Logik

Proses 8086 unit aritmetik dan logik telah dipisahkan menjadi tiga kumpulan seperti operasi penambahan, pembahagian, dan kenaikan. Paling Arahan Aritmetik dan Logik mempengaruhi daftar status pemproses.

Pengaturcaraan bahasa pemasangan 8086 mnemonics adalah dalam bentuk op-code, seperti MOV, MUL, JMP, dan sebagainya, yang digunakan untuk menjalankan operasi. Pengaturcaraan bahasa perhimpunan 8086 contoh

Penambahan
ORG0000jam
MOV DX, # 07H // pindahkan nilai 7 ke daftar AX //
MOV AX, # 09H // pindahkan nilai 9 ke penumpuk AX //
Tambah AX, 00H // tambahkan nilai CX dengan nilai R0 dan simpan hasilnya di AX //
TAMAT
Pendaraban
ORG0000jam
MOV DX, # 04H // pindahkan nilai 4 ke daftar DX //
MOV AX, # 08H // pindahkan nilai 8 ke penumpuk AX //
MUL AX, 06H // Hasil darab disimpan di dalam Accumulator AX //
TAMAT
Penolakan
ORG 0000j
MOV DX, # 02H // pindahkan nilai 2 untuk mendaftar DX //
MOV AX, # 08H // pindahkan nilai 8 ke penumpuk AX //
SUBB AX, 09H // Nilai hasil disimpan di Accumulator A X //
TAMAT
Bahagian
ORG 0000j
MOV DX, # 08H // pindahkan nilai 3 untuk mendaftar DX //
MOV AX, # 19H // pindahkan nilai 5 ke penumpuk AX //
DIV AX, 08H // nilai akhir disimpan di Accumulator AX //
TAMAT

Oleh itu, ini semua mengenai program Contoh Perancangan Pengaturcaraan 8086, 8086 Arkitek Prosesor untuk program pemprosesan 8086, Aritmetik dan Arahan Logik. Selain itu, sebarang pertanyaan mengenai artikel ini atau projek elektronik, anda boleh menghubungi kami dengan memberi komen di bahagian komen di bawah.