ورود

View Full Version : جدا کردن اولین کلمه از رشته



csharpprogramer88
پنج شنبه 01 دی 1390, 11:04 صبح
سلام چطور میتونم اولین کلمه از رشته را جدا کنم و در یک ثبات بریزم (از اولین کاراکتر بخونم تا به اولین فاصله برسم )

hepL3r
پنج شنبه 01 دی 1390, 11:57 صبح
اگه جمله شما در متغیر 1Sentence باشه و قرار باشه کلمه رو تو متیر word1 بریزیم , برنامتون اینطوری میشه :


mov eax,offset Sentence1
xor ebx,ebx
xor ecx,ecx
a1:
mov bl,byte ptr ds:[eax+ecx]
cmp bl,20h
je a2
mov byte ptr ds:[word1+ecx],bl
inc ecx
jmp a1
a2:

csharpprogramer88
پنج شنبه 01 دی 1390, 22:26 عصر
کد شما را اجرا کردم و ارور داد این کد را مینویسم لطفا کمک کنید




;;; read of a string
MOV AH,10
MOV DX,OFFSET ST0
INT 21H


lea si,[ST0]
mov cx,50
l1:mov al,[si]
cmp al,' '
jnz l3
inc num
l3:inc si
loop l1

hepL3r
شنبه 03 دی 1390, 10:36 صبح
میشه بگید از کدوم IDE استفاده میکنید ؟
من کد خودم رو دیروز اجرا کردم ولی کامل کار کرد . رسیدم خونه سورسشو میذارم واستون .

csharpprogramer88
شنبه 03 دی 1390, 11:30 صبح
من از tasm,tlinkاستفاده میکنم (32بیتی)
خواهشا کد کامل را بزارید
بازم از شما ممنونم

xman_1365_x
دوشنبه 05 دی 1390, 18:40 عصر
کدی که دوست گرامی hepL3r گذاشتن درسته اما با ثبات های 32 بیتی استفاده کردن الگوریتم کارم اینه شما یکی یکی آرایه رو بررسی کنید اگر 20 هگز یا همون فضای خالی هست از حلقه خارج بشه
موفق باشی

csharpprogramer88
سه شنبه 06 دی 1390, 20:31 عصر
برای چاپ کردن رشته جدا شده چه کار کنیم؟

xman_1365_x
سه شنبه 06 دی 1390, 23:16 عصر
برای چاپ کردن رشته جدا شده چه کار کنیم؟
یا تعدادش رو بدست بیارین با وققه یکی یکی حروف رو نمایش بدین یا اینکه انتهای رشته رو دالر($) بزارین با وققه 21 تابع 9 نمایش بدین
موفق باشی