الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عرّفت stringوأريد حساب عدد الكلمات فيها

مغلق
بدأه مداد في 25 مارس 2005 · 3 رد · 646 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أخوتي الكرام

عرّفت متغير كالتالي

array word 20 dup(abc) ;as an array

وأريد تعريف متغير يحسب عدد مرات تكرار كلمة abc داخل المصفوفة السابقة

سأدرج الآن باذن الله بعض الأفكار التي فكّرت فيها وأرجو توجيه حضراتكم مشكورين

#2

فكرت في حساب عدد الوحدات في الarray كالتالي

numarray word word ($-array)\2

ثم اريد من الخطوة السابقة حساب عدد الوحدات وأقسمها على 3 اعتبارا بان الأسكي كود لكل حرف من حروف كلمة abc نعتبره في واحد بايت

أرجو إفادتي بصحة الطريقة السابقة من عدمها

لكم جزيل الشكر أخوتي الكرام

#3

السلام عليكم ورحمة الله وبركاته

مداد اواجه نفس المشكله

لانه حتى لو حسبنا عدد word

راح يطلع لك مسج initializer magnitude too large for specified size

على array word 20 dup(abc)

وحل هذا الخطاء نكتب abc ب الاسكي

والمشكله معرف كيف اكتبها عن طريق الاسكي

وانا مبتدا فيها وهذا اول برنامج احاول اكتبه والمشكله علينا تسليمه السبت

واتمنى المساعده

#4
TITLE DIS           (dis.asm)

INCLUDE Irvine32.inc
.data
myword word 20 DUP("LAB")  // instead use the ascii codes of letters (L), (A), and (B). ماعرف كيف اغيرها   

NumWord DWORD ($-myword)/2
NumLAB DWORD ($-myword)/3
myname  byte "my name",0
welcomemsg byte "welcoming",0
ENTERS EQU <0dh,0ah,0>
s1 byte ENTERS
s TEXTEQU <mov edx,offset s1>
.code
main PROC
 mov esi,offset myword
 mov ecx,NumWord   
 mov ebx,TYPE myword
 call DumpMem
 mov edx,offset myname
 call WriteString

 mov edx,offset welcomemsg
 call WriteString
 s
 call WriteString
 mov eax,NumWord
 call WriteInt
 s
 call WriteString
 mov eax,NumLAB
 call WriteInt
 s
 call WriteString
exit
main ENDP
END main
;..........................
;...............................

البرنامج مجرد طباعه للمحتويات الذاكره يعني جدا ممبتدا بس اول مره اشتغل على الاسمبلي ومطلع للي اخطاء :wacko: وماعرفت احلها

يالليت تساعدوني فيها :rolleyes:

تم تعديل هذه المشاركة بواسطة Mrs.n في 25 مارس 2005 في 17:41

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…