אסמבלי x86/פקודות/פקודות על ביטים
אסמבלי x86 |
---|
|
פקודת AND
ביצוע AND לוגי של אופרנד המקור עם אופרנד היעד על אופרנד המקור .
פרמטרים: אוגר, זכרון; זכרון, אוגר; אוגר, אוגר; זכרון, ערך מיידי; אוגר, ערך מיידי
תחביר: AND OpDestination, OpSource
לדוגמה: כאשר AX=01000000b:
AND AX, 11110000b; AX = 01000000b
אלגוריתם: OpDestination = OpDestination, AND OpSource
הדגלים המשתנים: Carry = 0,Zero, Sign, Overflow = 0, Parity
פקודת OR
ביצוע OR לוגי של אופרנד המקור עם אופרנד היעד על אופרנד המקור .
פרמטרים: אוגר, זכרון; זכרון, אוגר; אוגר, אוגר; זכרון, ערך מיידי; אוגר, ערך מיידי
תחביר: OR OpDestination, OpSource
לדוגמה: כאשר AX=11111101b:
OR AX, 11110000b; AX = 11111101b
אלגוריתם: OpDestination = OpDestination, OR OpSource
הדגלים המשתנים: Carry = 0,Zero, Sign, Overflow = 0, Parity
פקודת TEST
ביצוע AND לוגי של אופרנד המקור עם אופרנד היעד. אופרנד היעד אינו משתנה - רק הדגלים .
פרמטרים: אוגר, זכרון; זכרון, אוגר; אוגר, אוגר; זכרון, ערך מיידי; אוגר, ערך מיידי
תחביר: AND OpDestination, OpSource
לדוגמה: כאשר AX=01001101b, ZF=0:
AND AX, 11110000b; AX = 01001101b, ZF=1
אלגוריתם: OpDestination AND OpSource
הדגלים המשתנים: Carry = 0,Zero, Sign, Overflow = 0, Parity
פקודת XOR
ביצוע XOR לוגי של אופרנד המקור עם אופרנד היעד על אופרנד היעד .
פרמטרים: אוגר, זכרון; זכרון, אוגר; אוגר, אוגר; זכרון, ערך מיידי; אוגר, ערך מיידי
תחביר: XOR OpDestination, OpSource
לדוגמה: כאשר AX=10111101b:
XOR AX, 11110000b; AX = 01001101b
אלגוריתם: OpDestination = OpDestination, XOR OpSource
הדגלים המשתנים: Carry = 0,Zero, Sign, Overflow = 0, Parity
פקודת NOT
ביצוע NOT לוגי על אופרנד היעד.
פרמטרים: אוגר; זכרון
תחביר: NOT OpDestination
לדוגמה: כאשר AX=01001101b:
NOT AX; AX = 10110010b
אלגוריתם: OpDestination = NOT OpDestination
פקודת ROR
הזזה של כל הבתים באופרנד היעד ימינה כמה פעמים לפי ערך אופרנד המקור. הבתים שנמחקו יכנסו לשמאל.
פרמטרים: זכרון, 1; אוגר, 1; זכרון, CL; אוגר, CL
תחביר: ROR OpDestination, OpSource
לדוגמה: כאשר AX=10011010b:
ROR AX, 1; AX = 01001101b
אלגוריתם: OpDestination = OpDestination, ROR OpSource
הדגלים המשתנים: Carry, Overflow
פקודת ROL
הזזה של כל הבתים באופרנד היעד שמאלה כמה פעמים לפי ערך אופרנד המקור. הבתים שנמחקו יכנסו לימין.
פרמטרים: זכרון, 1; אוגר, 1; זכרון, CL; אוגר, CL
תחביר: ROL OpDestination, OpSource
לדוגמה: כאשר AX=10110101b:
ROL AX, 1; AX = 01101011b
אלגוריתם: OpDestination = OpDestination, ROL OpSource
הדגלים המשתנים: Carry, Overflow
פקודת SHR
הזזה של כל הבתים באופרנד היעד ימינה כמה פעמים לפי ערך אופרנד המקור. בבתים החסרים משמאל יכנסו 0.
פרמטרים: זכרון, 1; אוגר, 1; זכרון, CL; אוגר, CL
תחביר: SHR OpDestination, OpSource
לדוגמה: כאשר AX=00011010b:
SHR AX, 1; AX = 00001101b
אלגוריתם: OpDestination = OpDestination, SHR OpSource
הדגלים המשתנים: Carry, Overflow
פקודת SHL
הזזה של כל הבתים באופרנד היעד שמאלה כמה פעמים לפי ערך אופרנד המקור. בבתים החסרים מימין יכנסו 0.
פרמטרים: זכרון, 1; אוגר, 1; זכרון, CL; אוגר, CL
תחביר: SHR OpDestination, OpSource
לדוגמה: כאשר AX=00011010b:
SHL AX, 1; AX = 00110100b
אלגוריתם: OpDestination = OpDestination, SHL OpSource
הדגלים המשתנים: Carry, Overflow