X_Dror פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 יש לי שאלה כשאת לשיוערי הבית - "כתוב תוכנית שמכפילה את ערכו של אוגר CL פי 5."עכשיו אני יודע איך לכפול במספרים זוגיים אבל לא במספרים אי זוגיים.חשבתי אולי על לכפול בעשר ועאז לחלק ב-2 אבל אני לא יודע איך ואם זה נכון.אפשר להשתמש בפקודות MOV,ADD,SUBתודה! קישור לתוכן שתף באתרים אחרים More sharing options...
vasser פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 i won't write in asm, but here's one option:move the value "5" to another register, then run some sort of a loop (5 time) till that register is 0on each iteration, add the value of the CL register to an empty register (total of 5 times). קישור לתוכן שתף באתרים אחרים More sharing options...
X_Dror פורסם 2005 בינואר 22 מחבר Share פורסם 2005 בינואר 22 "then run some sort of a loop (5 time) till that register is 0on each iteration, add the value of the CL register to an empty register (total of 5 times").אני לא מבין..... מה זה? איך אני עושה את זה? קישור לתוכן שתף באתרים אחרים More sharing options...
vasser פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 i haven't programmed in asm, i worked with another asm-like program, but here goes: mov #5, r1 ; loop counter mov #0, r2 ; r2 = 0loop: add r0, r2 ; sum += cl sub r1 ; counter reduce tst r1 bnq loop ; if r1 != 0, continue loop mov r2, r0 ; cl = sum halt ; end note: i am assuming the register names are r0 ... r5 r0 = cl, all the others just replace as you wish hope its close enough קישור לתוכן שתף באתרים אחרים More sharing options...
X_Dror פורסם 2005 בינואר 22 מחבר Share פורסם 2005 בינואר 22 יש פה פקודות שאני חושב שאני לא יכו להשתמש... לדוגמה - ,tst r1,bnq loop אני יכול להשתמש רק ב- MOV, ADD SUB ומה זה? - "sub r1 " מה אתה בדיוק מחסר פה? ומה זה tst? ושוב תודה רבה על הטרחה! קישור לתוכן שתף באתרים אחרים More sharing options...
icebreak פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 מכיוון שאסור לך לעשות BRANCH, מה הבעיה לעשות פשוטADD CL,CL4 פעמים ? קישור לתוכן שתף באתרים אחרים More sharing options...
Fooxy פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 i haven't programmed in asm, i worked with another asm-like program, but here goes: mov #5, r1 ; loop counter mov #0, r2 ; r2 = 0loop: add r0, r2 ; sum += cl sub r1 ; counter reduce tst r1 bnq loop ; if r1 != 0, continue loop mov r2, r0 ; cl = sum halt ; end note: i am assuming the register names are r0 ... r5 r0 = cl, all the others just replace as you wish hope its close enough מישהו פה מתכנת לARM, או שרק נדמה לי? קישור לתוכן שתף באתרים אחרים More sharing options...
ballerum פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 MOV CH,CLMOV AL,4HX5:ADD CL,CHDEC ALJNZ X5RET קישור לתוכן שתף באתרים אחרים More sharing options...
X_Dror פורסם 2005 בינואר 22 מחבר Share פורסם 2005 בינואר 22 למדו אותי דבר כזה - נגיד שאני רוצה לכפול בארבע :mov cl, 2 (2)add cl,cl (4) add cl,cl (8) (מה שבסוגריים מסמל את התוצאה)אז העיה היא שאיך אני אמור לכפול ב- 5?כי אני יכול לפי השיטה הזאתי לכפול רק במספרים זוגיים.ו- ballerium אני לא יכול להשתמש בפקודות האלה ... רק ב- mov,add,sub קישור לתוכן שתף באתרים אחרים More sharing options...
ballerum פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 תשתמש בפקודת מוב לcl אל chותכתוב 4 פעמים add cl,ch קישור לתוכן שתף באתרים אחרים More sharing options...
icebreak פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 מישהו פה מתכנת לARM, או שרק נדמה לי? יותר כמו PDP-11 מאשר ARM... קישור לתוכן שתף באתרים אחרים More sharing options...
X_Dror פורסם 2005 בינואר 22 מחבר Share פורסם 2005 בינואר 22 תודה רבה! קישור לתוכן שתף באתרים אחרים More sharing options...
icebreak פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 מה עשית בסוף? קישור לתוכן שתף באתרים אחרים More sharing options...
Ghosthunter פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 הפקודה MUL מכפילה, לא? קישור לתוכן שתף באתרים אחרים More sharing options...
udif פורסם 2005 בינואר 22 Share פורסם 2005 בינואר 22 MOV CH,CLADD CH,CHADD CH,CHADD CL,CHטוב?הפקודה הראשונה שומרת את CL בצד בתוך CHהפקודה השניה מכפילה את CH ב- 2הפקודה השלישית מכפילה את התוצאה פי 2, סה"כ פי 4הפקודה האחרונה מוסיפה את התוצאה הקודמת ל- CL, סה"כ פי 5. קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.