למידת אסמבלי- מאיפה להתחיל?
-
@yossiz א.האם יש לך רקע בזה? (נראה שכן) ב.תודה ג.לדעתך מי עושה רברסינג יותר טוב אדם או מכונה והאם זה ישתנה.
ד. זהו, אני מעונין גם בשביל לפרק בעתיד נוזקות למיניהם שרובם נכתבות בשפת מכונה זה ישאר רלוונטי לדעתך? . C לפני אסמבלי? לא הפוך? כלומר כך אני ידע בדיוק איך נראה המבנה של פקודת אסמבלי בשפת מכונה אולי עדיף כך? -
@yossiz א.האם יש לך רקע בזה? (נראה שכן) ב.תודה ג.לדעתך מי עושה רברסינג יותר טוב אדם או מכונה והאם זה ישתנה.
ד. זהו, אני מעונין גם בשביל לפרק בעתיד נוזקות למיניהם שרובם נכתבות בשפת מכונה זה ישאר רלוונטי לדעתך? . C לפני אסמבלי? לא הפוך? כלומר כך אני ידע בדיוק איך נראה המבנה של פקודת אסמבלי בשפת מכונה אולי עדיף כך?@שאלתיאל פעם הייתי ממש כמוך שרציתי להבין איך הכל עובד. ההמלצות שלי הם מה שאני עשיתי בפועל: למדתי C וזה באמת עזר לי הרבה בהבנת התהליכים, למדתי גם קצת אסמבלי אבל לא כשפה אלא הכרת המושגים בלי הפרטים הקטנים
כיום אני לא יכול להסתכל על קטע של אסמבלי ולהגיד לך מה זה עושה, אבל זה לא נראה לי כסיניתלגבי ההמלצה על קורס nand2tetris, במחשבה שניה זה לא ממש מה שביקשת, כי מדובר של על איך עובד מעבד, שזה שכבה יותר נמוכה מהשכבה שאתה מתעניין בה. בכל מקרה אני ממליץ מאוד על הקורס אבל זה לא יעזור לך ישירות באסמבלי או הנדסה לאחור
נראה לי שזה ספר טוב וחינמי להתחיל ללמוד הנדסה לאחור ברמת אסמבלי: https://beginners.re (נתקלתי בו לפני כמה שנים, אז זה היה חינמי, נראה שהיום הוא מבקש תשלום סמלי, אפשר להשיג פה את הגירסה החינמית האחרונה)
לדעתך מי עושה רברסינג יותר טוב אדם או מכונה והאם זה ישתנה
אין לי באמת דעה בנושא כי אני לא עושה ריברסינג אבל מאוד הגיוני בעיני שזה כמו תכנות. המכונה הרבה יותר מהירה ולרוב יותר טובה מאדם ממוצע, אבל עדיין נשאר מקום למומחים להוסיף ערך שהמכונה לא יכולה
@שאלתיאל כתב בלמידת אסמבלי- מאיפה להתחיל?:
אני מעונין גם בשביל לפרק בעתיד נוזקות למיניהם שרובם נכתבות בשפת מכונה זה ישאר רלוונטי לדעתך
אני מפקפק על הקביעה שרוב הנוזקות כתובות באסמבלי. אבל באמת אם אתה מתעניין בדברים שנכתבו ישירות באסמבלי אז יש פחות עניין ללמוד שפות עליות, אבל אם הם נכתבו בשפות עליות וקומפלו לאסמבלי אז חשוב מאוד גם להכיר שפות עיליות ואיך המבנים ברמת השפה ממופים למבני אסמבלי. בכל מקרה יהיה לך תועלת ללמוד לפחות שפת C.
שים לב שאסמבלי שקומפיילר מפיק שונה מאוד מאסמבלי שבנאדם כותבבגדול אני חושב שעבור מי שלא מכיר לפחות C זה קצת הפיכת היוצרות ללכת ללמוד אסמבלי, זה אפשרי אבל פשוט נראה לי מוזר
-
@שאלתיאל פעם הייתי ממש כמוך שרציתי להבין איך הכל עובד. ההמלצות שלי הם מה שאני עשיתי בפועל: למדתי C וזה באמת עזר לי הרבה בהבנת התהליכים, למדתי גם קצת אסמבלי אבל לא כשפה אלא הכרת המושגים בלי הפרטים הקטנים
כיום אני לא יכול להסתכל על קטע של אסמבלי ולהגיד לך מה זה עושה, אבל זה לא נראה לי כסיניתלגבי ההמלצה על קורס nand2tetris, במחשבה שניה זה לא ממש מה שביקשת, כי מדובר של על איך עובד מעבד, שזה שכבה יותר נמוכה מהשכבה שאתה מתעניין בה. בכל מקרה אני ממליץ מאוד על הקורס אבל זה לא יעזור לך ישירות באסמבלי או הנדסה לאחור
נראה לי שזה ספר טוב וחינמי להתחיל ללמוד הנדסה לאחור ברמת אסמבלי: https://beginners.re (נתקלתי בו לפני כמה שנים, אז זה היה חינמי, נראה שהיום הוא מבקש תשלום סמלי, אפשר להשיג פה את הגירסה החינמית האחרונה)
לדעתך מי עושה רברסינג יותר טוב אדם או מכונה והאם זה ישתנה
אין לי באמת דעה בנושא כי אני לא עושה ריברסינג אבל מאוד הגיוני בעיני שזה כמו תכנות. המכונה הרבה יותר מהירה ולרוב יותר טובה מאדם ממוצע, אבל עדיין נשאר מקום למומחים להוסיף ערך שהמכונה לא יכולה
@שאלתיאל כתב בלמידת אסמבלי- מאיפה להתחיל?:
אני מעונין גם בשביל לפרק בעתיד נוזקות למיניהם שרובם נכתבות בשפת מכונה זה ישאר רלוונטי לדעתך
אני מפקפק על הקביעה שרוב הנוזקות כתובות באסמבלי. אבל באמת אם אתה מתעניין בדברים שנכתבו ישירות באסמבלי אז יש פחות עניין ללמוד שפות עליות, אבל אם הם נכתבו בשפות עליות וקומפלו לאסמבלי אז חשוב מאוד גם להכיר שפות עיליות ואיך המבנים ברמת השפה ממופים למבני אסמבלי. בכל מקרה יהיה לך תועלת ללמוד לפחות שפת C.
שים לב שאסמבלי שקומפיילר מפיק שונה מאוד מאסמבלי שבנאדם כותבבגדול אני חושב שעבור מי שלא מכיר לפחות C זה קצת הפיכת היוצרות ללכת ללמוד אסמבלי, זה אפשרי אבל פשוט נראה לי מוזר
@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
שאסמבלי שקומפיילר מפיק שונה מאוד מאסמבלי שבנאדם כותב
בתנאים מסוימים אני חושב שאדם יכול למטב דברים שונים
@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
אני מפקפק על הקביעה שרוב הנוזקות כתובות באסמבלי
לא כולם אבל אילו שבאמת עושות נזק..סטוקסטנט כתוב בעברית
גם לכתיבה באסמבלי יש יתרונות ששום שפה לא תגיע אליה,@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
השפה ממופים למבני אסמבלי. בכל מקרה יהיה לך תועלת ללמוד לפחות שפת C.
בגלל מה? כלומר זכור לי ששמעתי את זה פעם אבל למה?
@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
אבל באמת אם אתה מתעניין בדברים שנכתבו ישירות באסמבלי
אני ממש מעונין לכתוב תוכניות שלמות באסמבלי למרות שאני עוף מוזר ואף אחד לא עושה דברים כאלו.
@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
אבל אם הם נכתבו בשפות עליות וקומפלו לאסמבלי
מה זאת אומרת?
@yossiz כתב בלמידת אסמבלי- מאיפה להתחיל?:
פעם הייתי ממש כמוך שרציתי להבין איך הכל עובד
רצית ממש לכתוב ולהבין או בשביל למטב קוד של שפה אחרת?
-
יש לי חומר שאספתי לפני כמה שנים על הנושא.
מעוניין בסירטונים או בחומר כתוב?אם יש לך סבלנות ואתה מסתדר/אוהב ללמוד מסירטונים
נראה לי שכדאי להתחיל עם זה:
https://pop.education.gov.il/sherutey-tiksuv-bachinuch/vod-broadcasts/realtime-vod-22-7-2020/software-engineering-cyber-10th-grade-12th-grade-1133/
הוא מסביר מאוד יפה אבל צריך סבלנות.
יש שם 15 שיעורים קצת חבל שזה עצר...או עם זה:
כמדומני שפחות או יותר אותו חומר אבל יותר זריז ומתומצת:
אישית אני אוהב ללמוד על חומר מ2 כיוונים
זה מוסיף מאוד.וזה ספר יסודי:
http://www.lamed-oti.com/school/gvahim_assembly_book.pdf
כנראה שכבר נתקלת בויש פלייליסט של מישהו שעובד על הספר הזה ממש בסבלנות וביסודיות.
לא עברתי על כולו אבל עברתי על חלקו התרשמתי מיסודיות שלו.
בכל אופן זה לא משהו רשמי שמלווה את הספר.
כרגע לא מצאתי, אנסה לחפש.[שמור אצלי באון קי רוב הסירטונים, אבל עדיף למצוא את הערוץ כי יתכן שחסרים אצלי קצת סירטונים. וגם קצת מורכב להעלות את הכל]
שיהיה בהצלחה.
-
אמנם @yossiz לא רצה להמליץ לך על nand2tetris, אבל אם אסמבלי מרתק אותך, יש סיכוי טוב שזה יהיה עוד יותר מרתק (זה בעצם שלב אחד לפני שפת מכונה - זה יצירת החומרה שאח"כ המכונה יכולה לתרגם לפעולות, כמובן שאם אתה יודע איך החומרה עובדת אז כל מה שנשאר בשביל להבין אסמבלי זה רק הסינטקס)
גם יכול להיות שבתור אפיק פרנסה זה יהיה יותר ריווחי, כי יהיה יותר קשה להחליף את המתכנתים של האמבדד והמתכנתי חומרה ב-AI.
אם המטרה היא רק בשביל להיות מסוגל לעשות רוורסינג, אז AI כבר עכשיו יעשה את זה פי 100 יותר טוב, ויש עוד הרבה כלים שנועדו לזה לא צריך עבורם בכלל ידע באסמבלי.
עוד נקודה שאולי חשוב שתדע - אסמבלי זאת שפה שמתרגמת ישירות לפעולות מעבד, לכל מעבד יש שפת אסמבלי שונה, רק שיש "סטנדרט" למשפחות מעבדים שאפשר להשתמש בו גם בין מעבדים מאותה משפחה.אתה נראה נעול על אסמבלי, אבל השאלה מה נועל אותך לשם, בתקווה שזה לא מידע כוזב. (אני מסכים שזה מאוד כיף, אבל זה נראה שאתה מחפש לעשות עם זה משהו מעבר ללמוד את זה, שזה כמעט בטוח לא שווה)