100 likes | 253 Views
Assembly For X86. Chapter 1 Introduction. נושאי הלימוד. מבוא לשפת אסמבלי תפקידי האוגרים פקודות בסיסיות סביבת הפיתוח תנאים ולולאות פסיקות משתנים ומערכים עבודה ב- 32 סיביות שילוב C ואסמבלי. דרישות קדם. תכנות בשפת C הכרה טובה של מבנה המחשב: המעבד הזיכרון ומיפוי הכתובות
E N D
Assembly For X86 Chapter 1 Introduction
נושאי הלימוד • מבוא לשפת אסמבלי • תפקידי האוגרים • פקודות בסיסיות • סביבת הפיתוח • תנאים ולולאות • פסיקות • משתנים ומערכים • עבודה ב- 32 סיביות • שילוב C ואסמבלי
דרישות קדם • תכנות בשפת C • הכרה טובה של מבנה המחשב: • המעבד • הזיכרון ומיפוי הכתובות • התקני חומרה
שפות עיליות • לתכנות בשפות עיליות יש יתרונות רבים ע"פ תכנות בשפת המכונה: • ניידות של קוד ממחשב למחשב • פשטות • עוצמה בתהליכי תוכנה • חסרונות: • בזבזנות במשאבים
מדוע ללמוד אסמבלי • בשפת C ניתן לבצע כמעט כל משימה אולם כאשר המהדר יהפוך את הקוד לשפת מכונה הוא ישתמש באלגוריתם שלא תמיד יתן את התוצאה הטובה ביותר – מינימום פקודות מכונה • שפת אסמבלי מקבילה באופן מוחלט לשפת מכונה ולכן אנו יכולים לדעת בדיוק כמה פעולות תבצע התוכנית
דוגמא #include<stdio.h> void main(void) { Printf(“hello world”); } קובץ ההרצה בגודל 8800 בתים
דוגמא באסמבלי code segment assume cs:code,ds:code main: mov ax,code mov ds,ax mov dx,offset mess mov ah,9 int 21h mov ax,4c00h int 21h mess db "hello world$" code ends end main גודל קובץ ההרצה הינו 541 בתים בלבד
Compilers • MASM – של מיקרוסופט • TASM – של בורלנד • ASM86 – של אינטל עבור מעבדים 8086, 8088, 80186, 80188 . בשימוש בתעשיה • TASM32 – מהדר 32 סיביות – לכתיבת קוד ב - Protected Mode • ועוד מהדרים שונים בשימוש אקדמיה ותעשייה
הידור והרצה • כתיבת התוכנית בעורך • הפעלת TASM להידור • Tasm file.asm • קישור התוכנית • Tlink file.obj • הרצה
כלים • TASM – compiler • TLINK – linker • TD – debugger • TLIB – library creation