נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: אסמבלר - עזרה דחופה

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
יו
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 03 February 2007 בשעה 12:50 | IP רשוּם
ציטוט יו

מישהו יכול לעזור לי לעשות את התרגיל הבא:

 

יש לכתוב תוכנית המציירת ריבוע בודד (תו) הזז באלכסון ימינה ומעלה, כאשר נקודת ההתחלה מתקבלת ע"י המשתמש. כאשר הריבוע מגיע לגבול הוא חוזר בכיוון אחר (למשל, אם הוא פוגע בגבול העליון של המסך, הוא ימשיך משם בכיוון ימינה ולמטה). הריבוע ימשיך לנוע, ובכל התנגשות בגבולות המסך, ישנה כיוון. יש לשמור את הנתונים של כל תו שנדרס ע"י הריבוע ולשחזרו לאחר מכן. התוכנית תעצר כאשר המשתמש מקיש על מקש כלשהו במקלדת.

 

כדי לבדוק אם המשתמש הקיש על מקש במקלדת, יש להשתמש בשירות 11H של פסיקה 16H. פסיקה זו מציבה 0 בדגל ZF אם הוקש מקש ומציבה 1 באותו דגל אם לא היתה הקשה על מקש.

 

 

 

חזרה לתחילת העמוד הצג את כרטיס החבר של יו חפש הודעות אחרות של יו בקר בדף הבית של יו
 
ofir3dvb
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 05 February 2007
מדינה: Israel
משתמש: מנותק/ת
הודעות: 17
נשלח בתאריך: 05 February 2007 בשעה 17:56 | IP רשוּם
ציטוט ofir3dvb

אם אנחנו מדברים על text mode אז תוכל להציג את הריבוע באמצעות שירות 9 פסיקה 21h ואנו יודעים שבתצורת text mode יש 25x80 פיקסלים, לכן נוכל להשתמש בשירות 6 בפסיקה 10 הקס כדי למחוק כל פעם את המסך ועל מנת להעביר את הסמן כל פעם נוכל להשתמש בשירות 2 בפסיקה 10 הקס ובהתאם להשתמש בלולאה ובהתניות על מנת שהסמן יזוז לפי רצונך ואז בהתאם להדפיס שוב התו.

פתרון לא יעיל במיוחד אבל יעבוד בהנחה שאתה משתמש בtext mode.

חזרה לתחילת העמוד הצג את כרטיס החבר של ofir3dvb חפש הודעות אחרות של ofir3dvb
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה