41
1 ﻓﺼﻞ: دﺳﺘﻮراﻟﻌﻤﻞ ﻫﺎی اﺳﺎﺳﯽEmail:[email protected] 1 اﻫﺪاف اﯾﻦ ﻓﺼﻞ: ﭘﺲ از ﻣﻄﺎﻟﻌﻪ اﯾﻦ ﻓﺼﻞ ﺑﺎ ﻣﻔﺎﻫﯿﻢ و ﻣﻄﺎﻟﺐ زﯾﺮ آﺷﻨﺎ ﻣﯽ ﺷﻮ ﯾﺪ. ۱ - اﻧﺘﻘﺎل داده ﻫﺎ در ﺣﺎﻓﻈﻪ۲ - دﺳﺘﻮراﻟﻌﻤﻞ ﻫﺎی ﺟﻤﻊ ، ﺗﻔﺮﯾﻖ ، ﺿﺮب و ﺗﻘﺴﯿﻢ۳ - دﺳﺘﻮراﻟﻌﻤﻞ ﻫﺎی ﺟﻤﻊ و ﺗﻔﺮﯾﻖ ﻣﻘﺎدﯾﺮ ﺑﺰرگ۴ - دﺳﺘﻮراﻟﻌﻤﻞ ﻫﺎی ﮐﺎﻫﺶ و اﻓﺰاﯾﺶ۵ - دﺳﺘﻮراﻟﻌﻤﻞ ﻣﺤﺎﺳﺒﻪ ﻣﮑﻤﻞ دو ﯾﮏ ﻣﻘﺪارEmail:[email protected] 2

è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

1

: فصلدستورالعمل های اساسی

Email:[email protected] 1

: اهداف این فصل . یدپس از مطالعه این فصل با مفاهیم و مطالب زیر آشنا می شو

انتقال داده ها در حافظه -۱دستورالعمل های جمع ، تفریق ، ضرب و تقسیم -۲دستورالعمل های جمع و تفریق مقادیر بزرگ -۳دستورالعمل های کاهش و افزایش -۴دستورالعمل محاسبه مکمل دو یک مقدار -۵

Email:[email protected] 2

Page 2: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

2

انتقال داده ها بین مکان های مختلف

در ثبات کپی محتویات متغیر : مثال

در کپی محتویات

Email:[email protected] 3

...ادامه انتقال داده ها بین مکان های مختلف

MOV AL,BXMOV P1,P2MOV DS,CSMOV DS,15F3H

حاالت غیر مجاز در دستور

.طول دو عملوند باید برابر باشد.هر دو عملوند نباید آدرس حافظه باشند

.هر دو عملوند نباید ثبات سگمنت باشندنیست انتقال مقدار ثابت به ثبات سگمنت امکان پذیر

Email:[email protected] 4

Page 3: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

3

...ادامه انتقال داده ها بین مکان های مختلف

Datasg segment para ‘data’p1 DB 15p2 DB 25

Datasg endsCodesg segment para ‘code’main proc farassume cs:codesg ,ds:datasg

mov ax,datasgmov ds, ax

قرار داده و محتویات این دو محل را با هم عوض کند و را در محلهای ۲۵و ۱۵برنامه ای بنویسید که دو مقدار : مثال MOV AL,P1MOV BL,P2MOV P1,BLMOV P2,ALMain endp

Codesg endsend main

Email:[email protected] 5

...ادامه انتقال داده ها بین مکان های مختلف قبل از اجرامتغیرها مقدار : خروجی مثال

اجراثبات ها بعد از مقدار

اجرامتغیرها بعد از مقدار Email:[email protected] 6

Page 4: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

4

...ادامه انتقال داده ها بین مکان های مختلف : مثال

Email:[email protected] 7

...ادامه انتقال داده ها بین مکان های مختلف دستور بیت ) ۱۶یا ( ۸قرار داده و در ۱بیت اول عملوند ) ۱۶یا ( ۸را در ۲عملوند

را قرار می دهد ۲، عالمت عمولند ۱دوم عملوند

Email:[email protected] 8

Page 5: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

5

...ادامه انتقال داده ها بین مکان های مختلف دستور بیت ) ۱۶یا ( ۸قرار داده و در ۱بیت اول عملوند ) ۱۶یا ( ۸را در ۲عملوند

، مقدار صفر قرار می دهد ۱دوم عملوند

Email:[email protected] 9

...ادامه انتقال داده ها بین مکان های مختلف پس از اجرا دستورات زیر و حاصل ثبات : مثال

چند می باشد ؟

Email:[email protected] 10

Page 6: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

6

دستور تغییر محتویات دو عملوند

.می باشد دارای تمام شروط : فرم کلی

Email:[email protected] 11

دستور آدرس حافظه

240165 X2402

2403300 Y2404

2405

آدرس آفست متغیر را مشخص می کند

Email:[email protected] 12

Page 7: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

7

...ادامه - دستور آدرس حافظه مثال

2401400 X24022403

240424052406240724082409

Email:[email protected] 13

...ادامه - دستور مثال

آدرس حافظه 4001

613 X40024003248400440053654006400712640084009

4010 Email:[email protected] 14

Page 8: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

8

...ادامه - دستور دلند هر سه دستور زیر با یکدیگر معا: نکته

Email:[email protected] 15

...ادامه - دستور مثال

آدرس حافظه 4001

126400240032484004400561340064007

1260400840094010 Email:[email protected] 16

Page 9: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

9

...ادامه - دستور : مثال

Email:[email protected] 17

...ادامه - دستور .دستور العمل زیر را در نظر بگیرد: مثال

بدست می آید ، در و ، مجموع مقادیر این دستورالعمل محتوی آدرسی را که ، از . قرار می دهد ثبات Email:[email protected] 18

Page 10: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

10

داده ) واقعی ( محاسبه آدرس فیزیکی تآدرس شروع سگمن

داده مورد نظرافست

DS = 18A3

...ادامه - دستور . ندمی گوی افستمورد نظر از ابتدای سگمنت داده را ، فاصله

Offset = 5B27آدرس داده واقعی ؟

18A30 Email:[email protected]بیتی است ۲۰آدرس شروع سگمنت 0000 0011 1010 1000 0001 = 19

و آدرس شروع اگر آدرس واقعی داده ، : مثال .باشد ، مقدار آفست محاسبه شود سگمنت

...ادامه - دستور

Email:[email protected] 20

Page 11: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

11

دستور .قرار می دهد آدرس متغیر را در یکی از ثباتهای

ثبات متغیر مثال

ذخیره می شود در ثبات آدرس متغیر Email:[email protected] 21

...ادامه -دستور دو دستور زیر با هم برابرند : نکته

Email:[email protected] 22

Page 12: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

12

...ادامه -دستور : مثال

، با محتوی آدرس متغیر . قرار می گیرد جمع شده و در

IF BX=10 آدرس حافظه4001

COL400240032484004400561340064007

1260400840094010 Email:[email protected] 23

...ادامه -دستور : مثال

Email:[email protected] 24

Page 13: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

13

دستور .یردعملوند یک با عملوند دو جمع شده و حاصل در عملوند یک قرار می گ

) SS , DS , CS , ES. ( ثبات سگمنت نباید بعنوان عملوند یک استفاده شود. هر دو عملوند نباید حافظه باشند

. این دستور روی پرچم ها تاثیر می گذارد.باشند WORDهر دو عملوند بایستی از نوع بایت یا هر دو از نوع

Email:[email protected] 25

...ادامه - دستور

. اضافه می شود واحد به محتوی ۵

. اضافه می شود واحد به محتوی Email:[email protected] 26

Page 14: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

14

...ادامه - دستور

نتیجه

نتیجه

:مثال

Email:[email protected] 27

...ادامه - دستور

نتیجه

:مثال آدرس حافظه

4001613 X40024003

2484004400512840064007

400840094010 Email:[email protected] 28

Page 15: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

15

...ادامه - دستور در دستور تاثیر پرچم : مثال

نتیجه

Email:[email protected] 29

...ادامه - دستور

نتیجه

آدرس حافظه:مثال 101

X12102X+120103X+25104X+314105X+426106X+530107

108Email:[email protected] 30

Page 16: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

16

دستور جمع دو مقدار از نوع

Email:[email protected] 31

...ادامه دستور :مثال

Email:[email protected] 32

Page 17: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

17

...ادامه دستور x

X+2

…Y

Y+2

…Z

Z+2

31 16 15 0X Word _ high Word _ LOW

31 ADC 16 15 ADD 0Y Word _ high Word _ LOW

31 16 15 0Z Word _ high Word _ LOW

، در محاسبه ADCیکی از کاربرد های مهم دستور . می باشد double wordمجموع دو مقدار از نوع

Email:[email protected] 33

...ادامه دستور .با هم جمع کرده و حاصل را در مکان دیگری از حافظه قرار دهدبیتی موجود در حافظه را ۳۲برنامه ای بنویسید که دو عدد :مثال Datasg segment para ‘data’

p1L dw 1213hp1H dw 56ABhp2L dw 1020hp2H dw 19BDhp3L dw ?p3H dw ?

Datasg endsCodesg segment para ‘code’main proc far

assume cs:codesg ,ds:datasg

mov ax,datasgmov ds, ax

MOV AX,P1LADD AX,P2LMOV P3L,AXMOV BX,P1HADC BX,P2HMOV P3H,BX

Main endpCodesg endsend mainEmail:[email protected] 34

Page 18: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

18

...ادامه دستور Datasg: خروجی این مثال segment para ‘data’p1L dw 1213h

p1H dw 56ABhp2L dw 1020hp2H dw 19BDhp3L dw ?p3H dw ?

Datasg endsCodesg segment para ‘code’main proc farassume cs:codesg ,ds:datasg

Email:[email protected] 35

...ادامه دستور مقادیر ثبات ها و بیت های پرچم در آغاز کار

Email:[email protected] 36

Page 19: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

19

...ادامه دستور

Email:[email protected] 37

...ادامه دستور مقادیر ثبات ها و بیت های پرچم در پایان کار

Email:[email protected] 38

Page 20: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

20

...ادامه دستور 31 16 15 0

P1 56AB 121331 ADC 16 15 ADD 0

P2 A9BD 102031 16 15 0

P3 1 00068 2233

Email:[email protected] 39

دستور جمع . انجام می شود ADDابتدا جمع معمولی با دستور -۱. اصالح می شود DAAسپس نتیجه با دستور -۲

دستور . بعد از جمع بکار می رود BCDبرای تصحیح عدد

عملوندی ندارد .کار می کند ALروی ثبات

Email:[email protected] 40

Page 21: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

21

...ادامه دستور جمع : مثال

نمی باشد BCDبه صورت

AL = (D9H + 60 H ) =139H . هست BCDیک عدد 1001139 0011 0001Email:[email protected] 41

...ادامه دستور جمع خالصه عمل

، نیبل پایینی یا اگر پس از یک دستور -۱بیت ۴باشد ، به این باشد ، یا اگر ۹بزرگتر از . اضافه می شود پایین تر ،

نمی باشد BCDبه صورت باشدمی BCDبه صورت

Email:[email protected] 42

Page 22: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

22

...ادامه دستور جمع : مثال

. درا به نیبل پایینی اضافه می کن ۶مقدار DAAاست ، AF=1چون Email:[email protected] 43

...ادامه دستور جمع باشد ، یا اگر ۹اگر نیبل باالیی بزرگتر از -۲

.جمع می شود باشد ، نیبل باالیی با

نمی باشد BCDبه صورت باشدمی BCDبه صورت

Email:[email protected] 44

Page 23: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

23

دستور .قرار می دهد ۱کم کرده و حاصل را در عملوند ۱را از عملوند ۲عملوند

) SS , DS , CS , ES. ( ثبات سگمنت نباید بعنوان عملوند یک استفاده شود. هر دو عملوند نباید حافظه باشند

. این دستور روی پرچم ها تاثیر می گذارد.باشند WORDهر دو عملوند بایستی از نوع بایت یا هر دو از نوع

Email:[email protected] 45

...ادامه -دستور

. کم می شود واحد از محتوی ۵

. کم می شود واحد از محتوی Email:[email protected] 46

Page 24: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

24

...ادامه -دستور

نتیجه

نتیجه

:مثال

Email:[email protected] 47

...ادامه -دستور آدرس حافظه:مثال

101X26102

X+1126103X+264104X+313105X+440106

60107108

Email:[email protected] 48

Page 25: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

25

دستور تفریق دو مقدار از نوع

Email:[email protected] 49

...ادامه دستور :مثال

Email:[email protected] 50

Page 26: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

26

دستور تفریق . انجام می شود SUBابتدا تفریق معمولی با دستور -۱. اصالح می شود DASسپس نتیجه با دستور -۲

دستور . بعد از تفریق بکار می رود BCDبرای تصحیح عدد

.عملوندی ندارد.کار می کند ALروی ثبات

Email:[email protected] 51

ضرب اعداد بدون عالمت دستور : فرم کلی

بایت در بایت ضرب

کلمه در کلمه ضرب

Email:[email protected] 52

Page 27: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

27

...ادامه -دستور : مثال

Email:[email protected] 53

...ادامه -دستور : مثال

Email:[email protected] 54

Page 28: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

28

...ادامه -دستور : مثال

Email:[email protected] 55

...ادامه -دستور : مثال

Email:[email protected] 56

Page 29: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

29

...ادامه -دستور : مثال

Email:[email protected] 57

...ادامه -دستور طیلی با مساحت مستبرنامه اي بنویسید که :تمرین

. را محاسبه نماید ۱۳و عرض ۲۰طول . در محیط شبیه ساز اجرا شود

. کد و خروجی ارسال شودEmail:[email protected] 58

Page 30: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

30

...ادامه -دستور

Email:[email protected] 59

ضرب اعداد عالمت دار دستور : فرم کلی

بایت در بایت ضرب

کلمه در کلمه ضرب

Email:[email protected] 60

Page 31: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

31

...ادامه -دستور : مثال

Email:[email protected] 61

...ادامه -دستور : مثال

Email:[email protected] 62

Page 32: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

32

...ادامه -دستور : مثال

Email:[email protected] 63

بیتی بدون عالمت ۳۲ضرب دو مقدار حاصلضرب نهایی حاصلضرب جزئی ۳ ۲حاصلضرب جزئی ۱حاصلضرب جزئی

103 ×124 =(3 × 1 × 124)+(0 × 10 × 124)+ (1 × 100 × 124 ) Email:[email protected] 64

Page 33: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

33

... ادامه بیتی بدون عالمت ۳۲ضرب دو مقدار × ۱حاصلضرب

۲حاصلضرب۳حاصلضرب۴حاصلضرب

مجموع ) = بیتی ۶۴( حاصلضرب نهایی Email:[email protected] 65

تقسیم اعداد بدون عالمتدستور

DIV BL AX÷BL AL= خارج قسمت AH= باقی ماندهکلمه بر بایت تقسیم ه کلمه مضاعف بر کلمضرب

: فرم کلی

DIV BX DX:AX÷BX AX= خارج قسمت DX = باقی ماندهEmail:[email protected] 66

Page 34: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

34

...ادامه - دستور : مثال

Email:[email protected] 67

...ادامه - دستور : مثال

Email:[email protected] 68

Page 35: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

35

تقسیم اعداد عالمت دار دستور

IDIV BL AX÷BL AL= خارج قسمت AH= باقی ماندهکلمه بر بایت تقسیم ه کلمه مضاعف بر کلمضرب

: فرم کلی

IDIV BX DX:AX÷BX AX= خارج قسمت DX = باقی ماندهEmail:[email protected] 69

...ادامه -دستور : مثال

Email:[email protected] 70

Page 36: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

36

...ادامه -دستور : مثال

Email:[email protected] 71

تبدیل کد اسکی به رقم و بالعکس

. کنید OFH ،ANDکد اسکی را با : روش اول -۱AND AL,OFH

تبدیل کد اسکی به رقم :قرار دارد فرض کنید کد اسکی در

. را از کد اسکی کم کنید 30Hیا 48عدد : روش دوم -۲SUB AL,48Email:[email protected] 72

Page 37: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

37

... ادامه تبدیل کد اسکی به رقم و بالعکس

. کنید 30H ،ORعدد را با : روش اول -۱OR AL,30H

تبدیل رقم به کد اسکی :قرار دارد فرض کنید عدد در

. را با عدد مورد نظر جمع کنید 30Hیا 48عدد : روش دوم -۲ADD AL,48

Email:[email protected] 73

دستورالعمل های کاهش و افزایششکل کلی

. ، یک واحد کاهش پیدا می کند مقدار عملوند : . کنداضافه می ، یک واحد به مقدار عملوند :

. می گذارداثر PFو SF ،OF ،ZF ،AFاین دو دستور فقط روی فلگ های Email:[email protected] 74

Page 38: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

38

... ادامه –دستورالعمل های کاهش و افزایش نتیجه مثال

آدرس حافظهمثال 2000

X1302001200220032004 Email:[email protected] 75

... ادامه –دستورالعمل های کاهش و افزایش آدرس حافظهمثال

2999X103000

20300126300241300363004

3005

نتیجه

Email:[email protected] 76

Page 39: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

39

دستورالعمل

: شکل کلیود یک عدد بکار می ر مکمل دو ،برای محاسبه

نتیجه

Email:[email protected] 77

دستورالعمل

مبهم باشد و بخواهید آن را در اگر اندازه متغیر : مثال . قرار دهید ، از دستور زیر استفاده می شود ثبات

رود برای جایگزین کردن اندازه فرضی عملوند بکار می

Email:[email protected] 78

Page 40: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

40

به گسترش دستور -۱

s

SSSSSSSS s

AX

AL

ALAH

Email:[email protected] 79

...ادامه به گسترش در ثبات ضرب محتوی ثبات : مثال

Email:[email protected] 80

Page 41: è è ² Û ( ? èä ù èã U è Û Ù 8 Jù X€¦ · rÝ è ) x 7 è m u è ý èù è Û n è w è p pù è p x n è w è î ù è è ù c è è w á s á t s á t á (pdlo xvhiludg#jpdlo

41

...ادامه به گسترش دستور -۲

s

SSSSSSSSSSSSSSSSS

DX:AX

AX

AXDX

Email:[email protected] 81

...ادامه به گسترش بر ثبات تقسیم محتوی ثبات : مثال

Email:[email protected] 82