السلام عليكم
انا استخدم nasm 16 bit
عندي مصفوفة موجودة في العنوان 0xb800
هذه المصفوفة حجمها 200 بايت اريد تعبئة هذه المصفوفة ب 0x45 في كل بايت
انا الكود نجح معاي في تعبئة بايت واحد كالتالي
mov es,0xb800 mov dword [es:0],0x45
لكن مو معقول انسخ هذا الكود و الصقه 200 مره (طبعا مع تغيير الoffset)
اريد ان اقوم بتعبئة المصفوفة باستخدام loop
هذه محاولاتي التي باءت بالفشل
counter db 0 mov es,0xb800 mov cx,0 agine: mov dword[es:counter] inc cx add [counter],1 cmp cx,200 jnz agine
المشكله هنا انه اذا جاء يحسب قيمة الcounter ياخذ عنوانه وليس القيمة الموجوده في العنوان
حاولت ان استخدم ريجيستر عوضا عن متغير لكن ظهر لي خطا
ارجوكم ساعدوني