registers - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

registers


Dark Daemon

Recommended Posts

אני יודע שב-visual C++ אתה יכול לראות בנקודה מסויימת את כל הזיכרון והרגיסטרים

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

לשנות את זה סתם יגרום למחשב לקרוס.

קישור לתוכן
שתף באתרים אחרים

גם בטורבו סי אתה יכול לראות את האוגרים....

אבל אני רוצה משהו ספיציפית לזה... שממש יהיה אפשר לעבוד עם זה...

חוץ מזה זה לא חייב לגרום לקריסה... זה גם יכול לעשות כל מיני דברים מעניינים...

קישור לתוכן
שתף באתרים אחרים

אתה לא יכול לשנות או לראות את המצב האמיתי של הרגיסטרים כי אין לך בכלל גישה אליהם.

וינדוס אחראי על כל מה שקורה שם.

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

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

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

אין שום בעיה להריץ שתי תוכנות במקביל שמכוונות את AX אחת ל 0 ואחת ל 1. אתה יכול בכל אחת מהן לבדוק את המצב של AX כפי שהיא רואה אותו ועדיין הראשונה תגיד שהוא 0 והשניה תגיד שהוא 1 כי כל פעם שאחת התוכנות פעילה וינדוס מחזיר את הרגיסטרים למצבם הקודם בפעם האחרונה שהפרוסס הוקפא.

בשביל ממש לשנות את הרגיסטרים אתה צריך משהו שיעלה עוד לפני וינדוס ויריץ את וינדוס בעצמו בתוך shell חיצוני. זה בהחלט יגרום לקריסה של וינדוס יש להניח.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...