PDA

View Full Version : حرفه ای: چندتا سوال از اساتید محترم



msdn1223
یک شنبه 01 بهمن 1391, 02:38 صبح
سلام دوستان، ببخشید من پست قبلی رو حذف کردم چون فایل ها ضمیمه نشده بودن و پست جدیدی دادم

من یه فایل ضمیمه کردم لطفا دانلود کنید، یه برنامه تقریبا ساده به زبان اسمبلیه، چندتا سوال در موردش دارم
اول اینکه چطور حالت گرافیکی رو در صفحه فعال کردن که برنامه اینطوری اجرا شده؟
دوم اینکه چطوری فعال کردن که ماوس رو تو صفحه نمایش بده؟

دوستان این سوالات خیلی برام مهمه، لطفا اگر اطلاعاتی دارید در اختیارم قرار بدین

ممنون

mazaher5723
یک شنبه 01 بهمن 1391, 09:10 صبح
سلام فعال کردن مد گرافیکی

mov ah,13h
int 10h

mazaher5723
یک شنبه 01 بهمن 1391, 09:12 صبح
فعال کردن موس

mov ax, 1
int 33h
نمونه کدشو اینجا گذاشتم.
اینجا (http://barnamenevis.org/showthread.php?378833-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%D8%A7%D8%B3%D9%85%D8%A8%D9%84%DB%8C-%D9%87%D9%85%D8%B1%D8%A7%D9%87-%D8%A8%D8%A7-%D8%B3%D9%88%D8%B1%D8%B3-%DA%A9%D8%AF&p=1680939#post1680939)

msdn1223
یک شنبه 01 بهمن 1391, 09:41 صبح
سلام

من کدهای شما رو به این صورت نوشتم و خواستم فایل اجرایی تولید کنم خطا داد و اصلا اجرا نکرد


mov ah,13h
int 10h

mov ax, 1
int 33h

mazaher5723
یک شنبه 01 بهمن 1391, 10:02 صبح
دوست عزیز ی سر به قسمت نمونه کد بزن اخرین نمونه کد گذاشتم

msdn1223
یک شنبه 01 بهمن 1391, 10:57 صبح
تشکر

کدی که گذاشتین رو دیدم، میخوام فایل اجرایی تولید کنم نتیجش میشه اینطوری

98719


چرا اینطوری میشه؟

mazaher5723
یک شنبه 01 بهمن 1391, 11:29 صبح
اجرا میشه اینم فایل اجرایش + تصویری که اجرا کردم
7

mazaher5723
یک شنبه 01 بهمن 1391, 11:32 صبح
اینم عکسش در حال اجرا

msdn1223
یک شنبه 01 بهمن 1391, 11:38 صبح
والا من فایل اجرایی که فرستادین رو باز کردم درست مثل تصویری که بالا گذاشتم اجرا شد

mazaher5723
یک شنبه 01 بهمن 1391, 12:57 عصر
دوست عزیز
با نرم افزار emu8086 باز کن و اجراش کن
لینک دانلود (http://www.google.com/url?sa=t&rct=j&q=emu8086%20%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF&source=web&cd=1&cad=rja&ved=0CDQQFjAA&url=http%3A%2F%2Fp30download.com%2Ffa%2Fentry%2F36 259%2Fsoftware%2Fdevelopment%2Fcompiler-interpreter%2F%25D8%25AF%25D8%25A7%25D9%2586%25D9% 2584%25D9%2588%25D8%25AF-emu8086-%25DA%25A9%25D8%25A7%25D9%2585%25D9%25BE%25D8%25A7 %25DB%258C%25D9%2584%25D8%25B1-%25D9%2588-%25D9%2588%25DB%258C%25D8%25B1%25D8%25A7%25DB%258C %25D8%25B4%25DA%25AF%25D8%25B1-%25DA%25A9%25D8%25AF-%25D8%25B2%25D8%25A8%25D8%25A7%25D9%2586-%25D8%25A7%25D8%25B3%25D9%2585%25D8%25A8%25D9%2584 %25DB%258C%2F&ei=-r_7UPG9FIfOsgaL_YDIAw&usg=AFQjCNG3bzVeBU3AUElIi2CakMgAu-z3ug&bvm=bv.41248874,d.Yms)

msdn1223
یک شنبه 01 بهمن 1391, 13:15 عصر
ممنون این نرم افزار رو دارم، خب حالا تو این نرم افزار درست کار میکنه ولی مثل اون فایل اجرایی که گذاشتم فول اسکرین نمیشه
در ضمن میشه کاری کرد مثل اون فایل اجرایی که گذاشتم با کلیدهای جهتی کیبورد موقعیت ماوس رو تغییر داد؟
در ضمن از زحمتی که میکشید بی نهایت سپاسگذارم

mazaher5723
یک شنبه 01 بهمن 1391, 13:38 عصر
خواهش میکنم.اره مبشه
فقط بیین کد اسکی چهت نماها چنده؟ بعد ازشون استفاده کن مثلا من خودم از کد اسکی Enter بجا Tab استفاده کردم.

mov ah, 1
int 21h
با استفاده از این وقفه یک کارکتر میخونه بعدش مقایسش کن با کلیدهای جهت نما.
وقفه سازگاری رنگه با فول اسکرینم این هست

mov ax, 1003h
mov bx, 0 .
int 10h

msdn1223
یک شنبه 01 بهمن 1391, 13:57 عصر
من با گرفتن کاراکتر از ورودی و این مسائل مشکلی ندارم، تنها مشکل من اینه که نمیدونم با چه دستوری اشاره گر ماوس رو موقعیتش رو تغییر بدم؟ (منظورم فلش ماوس هستش)
الان این کدهایی که گذاشتین رو کجا بذارم؟ یعنی فول اسکرین نمیشه؟ پس اون فایل رو چطوری نوشتن؟
فول اسکرین هم نشد مشکلی نداره، حالا میخوام این کار رو بکنم، توتصویر نشون دادم
برنامه که اجرا شد ماوس در اینجا قرار داره:
98731

کاربر که دکمه ای مثل f رو زد موقعیت ماوس اینطوری بشه، بره به یه نقطه ای که ما مشخص میکنیم
98732

کد خواندن کلید و اینا رو میدونم، فقط چطور مختصات ماوس رو تغییر بدم؟ اینو نمیدونم
اگه اینو بدونم تقریبا کار تمومه

mazaher5723
یک شنبه 01 بهمن 1391, 16:45 عصر
اینم کار با موس SET
mov dh, 10
mov dl, 20
mov bh, 0
mov ah, 2
int 10h

dl:ستون
dh:سطر
(تونمونه کدا قبلا کدشو گذاشتم)

mazaher5723
یک شنبه 01 بهمن 1391, 16:53 عصر
اینم GET کردن موقیعیت موس


AH = 03h
INT 10h

بازم سطر و ستون مثل بالاست

msdn1223
یک شنبه 01 بهمن 1391, 17:11 عصر
اینم کار با موس SET
mov dh, 10
mov dl, 20
mov bh, 0
mov ah, 2
int 10h

dl:ستون
dh:سطر
(تونمونه کدا قبلا کدشو گذاشتم)

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

mazaher5723
یک شنبه 01 بهمن 1391, 17:41 عصر
اونو نمی دونم فقط گرفتن موقیت موس اینه
mov ax, 3
int 33h
cx ,dx هم موقیتای سطز و ستون موس و نشون میدم set کردنشو نمیدونم.الان ی جستجو می کنم

msdn1223
یک شنبه 01 بهمن 1391, 17:43 عصر
قربانت من منتظرم

mazaher5723
یک شنبه 01 بهمن 1391, 17:46 عصر
دوس عزیز
شک داشتم درست شد

mov ax,4
int 33h
برا ست کردن ببین کار میکنه
من چکش می کنم

mazaher5723
یک شنبه 01 بهمن 1391, 17:48 عصر
ولی emu8086 این وقفه رو Support نمیکنه با asm بنویسش

msdn1223
یک شنبه 01 بهمن 1391, 18:11 عصر
با asm هم نشد، ببین کلا صفحه که فول اسکرین نمیشه بنظرم اصلا درست کار نمیکنه
اون فایل اجرایی که گذاشتم چه خوب نوشتن...

mazaher5723
یک شنبه 01 بهمن 1391, 18:31 عصر
چی؟متوجه نشدم چی میگین؟

msdn1223
یک شنبه 01 بهمن 1391, 18:52 عصر
فایل اجرایی که گذاشتم میبینی چطوری اجرا میشه؟ فول اسکرین
این کدهایی که ما گذاشتیم نمیدونم کجاش نقص داره که کلا کار نمیکنه، نمیدونم انگار مد گرافیکی کامل فراخوانی نمیشه یا چی

این فایلی که ضمیمه کردم رو ببین، صفحه فول اسکرین میشه (مثل فایل اجرایی که گذاشتم)
ولی یه رنگ های درهم برهمی میاره رو صفحه
یه نگاه بکن شاید تو تونستی کاری کنی، من زیاد وارد نیستم
من این کدها رو از اینجا برداشتم
http://www.wagemakers.be/english/doc/vga

msdn1223
یک شنبه 01 بهمن 1391, 21:16 عصر
سلام
اسن فایلی که قرار دادم کامپایلر tasm هستش، از حالت فشرده خارج کنید یه فایل داخلش هست به اسم a.asm
تو این فایل کدهای مربوطه نوشته میشه و یه فایل هم هست به اسم test.bat، فایل test.bat رو که اجرا کنیم از فایل a.asm یک فایل اجرایی تولید میکنه و اجرا میکنه
با اجرای اون میتونید نتیجه کار منو ببینین که چرا اینطوری میشه
ممنون

mazaher5723
یک شنبه 01 بهمن 1391, 21:39 عصر
mov ax,01
int 33h
mov ax,04
mov cx,05
mov dx,,05
int 33h

بعد از این باید موست بر ب مکان 5 و 5

xman_1365_x
دوشنبه 02 بهمن 1391, 12:11 عصر
دوست گرامی از موضوع مناسب برای ایجاد تاپیک استفاده کنید!

اول اینکه چطور حالت گرافیکی رو در صفحه فعال کردن که برنامه اینطوری اجرا شده؟
دوم اینکه چطوری فعال کردن که ماوس رو تو صفحه نمایش بده؟

دوستان این سوالات خیلی برام مهمه، لطفا اگر اطلاعاتی دارید در اختیارم قرار بدین
برنامه رو نوشتم از این (http://barnamenevis.org/showthread.php?378833-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%D8%A7%D8%B3%D9%85%D8%A8%D9%84%DB%8C-%D9%87%D9%85%D8%B1%D8%A7%D9%87-%D8%A8%D8%A7-%D8%B3%D9%88%D8%B1%D8%B3-%DA%A9%D8%AF&p=1681904&viewfull=1#post1681904)قسمت دانلود کنید
موفق باشید

mazaher5723
دوشنبه 02 بهمن 1391, 13:30 عصر
مهندس وقفه 33h ,ax=4 امیلیتور پشتیبانی نمیکنه باید چکار کرد من همینجا گیر داشتم

xman_1365_x
دوشنبه 02 بهمن 1391, 14:05 عصر
رووی ویندوز ایکس پی یا داس باکس اجرا کنید

mazaher5723
دوشنبه 02 بهمن 1391, 14:13 عصر
منظوره من اینه چکار کنم روی emu8086 اجرا شه؟

xman_1365_x
دوشنبه 02 بهمن 1391, 15:50 عصر
امولاتور همه وقفه هارو پشتیبانی نمیکنه!
شما هم نمیتونید این وقفه رو بازنویسی کنید باید سازنده ماژولی قرار بده