Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
Bilgisayar Donanım ve Sistem Yazılımı
Aslı Eyecioğlu Özmutlu
2
Hedefler Emu8086 ile aritmetik işlemler (devam)
3
Geçen Hafta Taşıma - MOV Komutu Toplama - ADD Komutu
Çıkarma - SUB Komutu İkili Sistemde Tümleyen Aritmetiği Elde Biti (Carry) Taşma (Overflow) Artırma –INC komutu Azaltma –DEC komutu Tümleyen –NEG komutu
4
Bu Hafta Çarpma – MUL-IMUL Komutları Bölme – DIV-IDIV Komutları
5
Çarpma-Bölme Komutları
Çarpma ve bölme işlemleri 2 şekilde toplama ve çıkarma işlemlerinden farklıdır: İki negatif sayının çarpımı pozitiftir. İki sayının çarpımından/bölümünden elde edilen sayı bu iki sayının boyutundan daha büyük/küçük olabilir.
6
Çarpma Komutları MUL ve IMUL
İki farklı çarpma komutu vardır: MUL: İşaretsiz sayılar için kullanılır. IMUL : İşaretli sayılar için kullanılır.
7
Çarpma Komutları MUL ve IMUL
Çarpılan iki sayıdan elde edilen çarpımın boyutu bu iki sayıdan büyük olabilir. Boyut konusundaki sorun ise sonucun bir büyük boyda belirlenmesi ile çözülür. 1 byte lık iki sayı çarpılınca sonuç 2 byte lık bir alana yerleştirilir; 2 byte lık iki sayı çarpılırsa sonuç 4 byte lık bir alana yerleştirilir...
8
Çarpma Komutları MUL ve IMUL
Çarpma komutundan önce çarpılacak ikinci sayının (boyutuna uygun biçimde) AL veya AX’e yerleştirilmesi gerekir. Benzer biçimde sonuçta AX veya AX-DX kaydedicilerine yerleştirilir. AX = AL * Operand (operand byte ise) (DX AX) = AX * Operand (operand word ise)
9
Çarpma Komutları-MUL
10
Çarpma Komutları-IMUL
11
Bölme Komutları DIV ve IDIV
İki farklı bölme komutu vardır: DIV: İşaretsiz sayılar için kullanılır. IDIV : İşaretli sayılar için kullanılır.
12
Bölme Komutları DIV ve IDIV
Çarpmada yapılan işlemin tersine, bölme işlemi bölünene göre küçük boyut üretir. Bu yüzden komutları kullanırken bölünenin boyutu bölenin boyutunun iki katı olmalıdır.
13
Bölme Komutları DIV ve IDIV
Çarpmada yapılan işlemin tersine, bölme işlemi bölünene göre küçük boyut üretir. Bu yüzden komutları kullanırken bölünenin boyutu bölenin boyutunun iki katı olmalıdır. AL = AX/ Operand (operand byte ise) AH = Kalan AX =(DX AX) /Operand (operand word ise) DX= Kalan
14
DIV Komutu
15
IDIV Komutu
16
Kaynaklar
17
Teşekkürler Sorular? Aslı Eyecioğlu Özmutlu aozmutlu@bartin.edu.tr
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.