PDA

View Full Version : سوال: گرفتن یک حرف و چاپ حرف بعدی



Arash_Niazmand
پنج شنبه 26 اسفند 1389, 14:43 عصر
درود دوستان.

من یک مشکلی دارم در رابطه حل این سوال . اگر امکان داره دوستان کمک کنن

سوال : از ورودی یک رشته در یافت شود { مثلا ali }
و در خروجی یک حرف بعد کلمات رشته را چاپ کنید . { مثلا در رشته بالا خروجی = bmj}

من با C# می دونم چطور میشه نوشت ولی اسمبلی نفهمیدم چطوری میشه حل کرد.

در c# هر حرف رشته را کد اسکی اش رو بعلاوه ۱ می کنیم و چاپ می کنیم .

دوستان ممنون می شم کمک کنید .

xman_1365_x
پنج شنبه 26 اسفند 1389, 16:22 عصر
در اسمبلي هم همينكارو كنيد
1-با يك حلقه و وقفه كاراكتر از ورودي بگيريد
*به دو شرط هم نياز داريد كه كنترل كنيد حروف از كاربر بگيريد و اگر z بود با يك جمع نكنه بايد بشه a
2-با وقفه نمايش بديد
*فقط موقع چاپ هر كاراكتر رو با يك جمع كنيد

Arash_Niazmand
پنج شنبه 26 اسفند 1389, 17:31 عصر
سپاس از جواب شما .

مشکل این جا بود که این زبان رو من بلد نیستم .

ممنون میشم کد این سوال رو کامل در اختیارم بگذارید .

xman_1365_x
پنج شنبه 26 اسفند 1389, 22:58 عصر
سپاس از جواب شما .

مشکل این جا بود که این زبان رو من بلد نیستم .

ممنون میشم کد این سوال رو کامل در اختیارم بگذارید .
خوب چون تمرين دانشجويي هست و اين ترم برداشتين كه يادبگيرين من جواب رو نميگم اول كمي مطالعه كنيد چون اين تكه كد كه خيلي سادست اگر خودتون ننويسيد تا آخر با اين زبان مشكل داريد!
منم راهنمايي كردم كافيه در كتاب و سايت جستجو ميكردين كه نكردين
در اين ارتباط كمي مطالعه كنيد و شروع به نوشتن كنيد مشكلي بود اينجا مطرح كنيد
اول شما بايد بدونيد ساختار كلي برنامه اسمبلي چطور هست
بعد در مورد وقفه ها مطالعه كنيد كه بتونيد از كاربر ورودي بگيريد يا خروجي رو نمايش بديد
براي حلقه فعلا loop رو آشنا بشيد
براي شرط هاتونم دستور هاي پرش شرطي و غير شرطي رو مطالعه كنيد
با خوندن اين پيش نياز ها شما مي تونيد اين برنامه رو بنويسيد
موفق باشي

Arash_Niazmand
جمعه 27 اسفند 1389, 23:49 عصر
دوست من این سوال دانشجویی من نیست چون خیلی وقت هست که دوره دانشجویی تمام شده . { یادش بخیر }

سوال کاملا شخصی بوده .


ممنون از لطف شما . از دوستان دیگر در اینجا یا در فروم های دیگر می پرسم .

سپاس

xman_1365_x
شنبه 28 اسفند 1389, 12:25 عصر
دوست من این سوال دانشجویی من نیست چون خیلی وقت هست که دوره دانشجویی تمام شده . { یادش بخیر }
خوب اسمبلي رو چطور پاس كردين:لبخندساده: باقي دروس رو نميدونم،به هر حال موفق باشي.

سوال کاملا شخصی بوده .
فكر نكنم اين نوع سوالات سوال شخصي باشه چون براي شما كاربردي نداره

ممنون از لطف شما . از دوستان دیگر در اینجا یا در فروم های دیگر می پرسم .
سپاس
دوستان ديگه هم فكر نميكنم براي شما بنويسند
حالا چون عيد در پيش هست،اينم عيدي من به شما و بچه هاي ديگه كه به اين سورس نياز دارند
دوستان لطفا كمي به دستورات نگاه كنيد سوالي بود بپرسيد.(از تاپيك ها بازديد ميشه اما دريغ از سوال)
پيشاپيش سال نو مبارك


.stack dw 128 dup(0)
.data
pkey db 13,10,"press any key...$"
x db 5 dup (?)
.code

main proc far
.startup

call getchar
call display

lea dx, pkey
mov ah, 9
int 21h

mov ah, 7
int 21h

mov ax, 4c00h
int 21h
main endp

getchar proc near
xor di,di
mov cx,5
for:
mov ah,7
int 21h
cmp al,123
jb if
jmp for
if:
cmp al,97
jb for
store:
mov x[di],al
mov ah,2
mov dl,al
int 21h
inc di
loop for
ret
getchar endp

display proc near

mov ah,2
mov dl,13
int 21h
mov dl,10
int 21h

mov cx,5
xor di,di
for2:
cmp x[di],122
jne show
mov x[di],96
cmp x[di],90
jne show
mov x[di],64
show:
inc x[di]
mov ah,2
mov dl,x[di]
int 21h
inc di
loop for2
ret
display endp

ends
end main

Arash_Niazmand
شنبه 28 اسفند 1389, 20:07 عصر
سپاس مهرتان .
{ بنده رشتم گرافیک بوده با کمال تاسف }
یکی از دوستان از بنده این سوال رو پرسید و بنده برای خودم جالب شد ببینم چطور میشه نوشت و پرسیدم .

از اینکه پاسخ کنجکاوی من رو دادید سپاس گذارم .

سوال : کدام خط به assci code + 1 اشاره می کنه ؟

xman_1365_x
شنبه 28 اسفند 1389, 23:36 عصر
اميدوارم شما جواب آماده رو به دوستتون ندين :چشمک:
مقدار آرايه رو در خط 64 اضافه ميكنم البته قبلش چك ميكنم كه اگر برابر با z با شه يكي ماقبل اسكي a را قرار بدهد ، يك شرطش اضافي هست چون اول براي حروف
a-z و A-Z نوشتم كه بعد گفتم با نگاه كردن به اين كد خودتون درستش كنيد
ضمنا بهتون پيشنهاد ميكنم emu8086 نصب كنيد و اين كد هارو ديباگ كنيد تا متوجه شيد هر دستور چه كاري انجام ميده(به كسي هم نگيد نويسنده اين برنامه از كدوم كشور هست:لبخند: )
موفق باشي