4-amaliy ish Assembler tilida dasturlash


xdo’ 256  ; x=256 (const)


Download 459 Kb.
Pdf ko'rish
bet6/8
Sana17.06.2023
Hajmi459 Kb.
#1528320
1   2   3   4   5   6   7   8
Bog'liq
4-mavzu assembler tilida dasturlash (1)

xdo’ 256 
; x=256 (const) 
mov ax, 105 mul x 
; ax = ax * x, ax = 26880 
moveax, 500000 movebx, 100000 mulebx ; EDX:EAX = EAX * EBX, EDX:EAX = 
50000000000 
ishorali ko’paytirish uchun IMUL ishlatiladi: 
IMUL  
IMUL ,  
IMUL , , IMUL 
,  
ishorali ko’paytirish buyrug’ining bir necha variantlari bor. 
1. Birinchisi MUL buyrug’iga mos keladi - ko’paytiruvchilardan biri buyruqda ko’rsatiladi, 
ikkinchisi 
esa 
EAX/AX/AL 
registrlarda 
joylashgan 
yuo’ladi, 
natija 
esa 
EDX:EAX/DX:AX/AX registrlariga yoziladi. 
mov eax, 5 
mov ebx, -7 
imul ebx ; EAX = ffffffdd (16 —lik sanoq tizimidagi 4 baytli son yoziladi), EDX = ffffffff 
2. ikkinchisida esa ko’paytiruvchilardan biri joylashgan registrni ko’rsatish imkonini beradi. 
Xuddi shu registrga natija yoziladi. ikkinchi ko’paytiruvchi esa to’g’ridan to’g’ri buyruqda 
ko’rsatiladi. 
movebx, 3 
imulebx, 6 
; EBX = EBX * 6 
3. Uchinchi usulda esa ham natija va ikkita ko’paytirmani ko’rsatish mumkin. Ammo natija 
faqat registrga joylanadi, ikkinchi ko’paytirma esa to’g’ridan to’g’ri operand bo’ladi. 
Birinchi ko’paytiruvchi registr yoki xotira yacheykasi bo’lishi mumkin. 
movebx, 500000 
imuleax, ebx, 100000 
; EAX = EBX * 100000, natijaningkattaqismiyo’qoladi 
4. To’rtinchisida ikkita ko’paytiruvchini ko’rsatish mumkin. Birinchisi registr bo’lishi kerak, 
ikkinchisi - registr yoki xotira yacheykasi. Natijasi birinchi operand joylashgan registrga 
joylanadi. 




Download 459 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling