ثبات پرچم (Flag Register)

Report
‫مهدی ایل بیگی‬
‫دانشگاه آزاد اسالمی دماوند‬
‫‪ .1‬واحد محاسبه و منطق )‪(ALU‬‬
‫– واحد محاسبه )‪(Arithmetic Unit‬‬
‫– واحد منطق )‪(Logic Unit‬‬
‫‪ .2‬رجيسترها‬
‫‪ .3‬واحد کنترل )‪(Control Unit‬‬
‫‪ .4‬گذرگاه مشترک )‪(Bus‬‬
‫‪ .5‬حافظه )‪(Memory‬‬
‫‪2‬‬
CU
ALU
R0
R1
Rn
DATA
ADDRESS
MEMORY
3
‫حافظههه ايههک جههع ممنطقههه منطاههه اي مسا کهههاکه اسههن کههه هلکههداو ندنههطا م ههال مهکمطاهههد جههع اجههن سه طرا دن کها جهها‬
‫•‬
‫ا هکها را ذخيره هناجد‪ .‬هل اجن حافظه ايک اراي جع لچسب قد ي ه هاو آ رس مهک اشد‪.‬‬
‫محتوي‬
‫‪500‬‬
‫‪1000‬‬
‫‪100‬‬
‫‪1001‬‬
‫‪250‬‬
‫‪1002‬‬
‫‪340‬‬
‫‪1003‬‬
‫‪10‬‬
‫‪1004‬‬
‫‪410‬‬
‫‪1005‬‬
‫‪501‬‬
‫‪1006‬‬
‫‪10‬‬
‫‪1007‬‬
‫آدرس‬
‫‪....‬‬
‫‪WRITE‬‬
‫‪4‬‬
‫‪READ‬‬
8bit
DATA 8 BIT
ADDRESS 10 BIT
1024 = 210
READ
WRITE
5
8bit
DATA 8 BIT
ADDRESS 20 BIT
1MB = 220
READ
WRITE
6
32bit
DATA 32 BIT
ADDRESS 28 BIT
256MB = 228
READ
WRITE
7
16bit
DATA 16 BIT
ADDRESS 20 BIT
1MB =
220
READ
WRITE
8
‫‪00000‬‬
‫‪000…00000‬‬
‫‪ 20‬بار‬
‫‪FFFFF‬‬
‫‪9‬‬
‫‪111...11111‬‬
‫‪ 20‬بار‬
F0000-FFFFF
EFFFF
BIOS
BIOS
256KB
BIOS ‫برنامه هاي‬
BIOS
C0000
BIOS
BFFFF
128KB
‫حافظه گرافيکي‬
A0000
9FFFF
9
8
‫قابل استفاده توسط برنامه ها‬
640 KB
1
00000
0
10
‫•‬
‫ر پل ايشه ه ل ‪ 8086‬آ رس ه هها ‪ 20‬يت هه‪ ،‬اس ههنس ول ههح چ ههط سه ه طل ه هها حافظ ههه و رجيس ههترها ‪ 16‬يت هه‪،‬‬
‫هستندس همی مطا آ رس ها را ر یع س طل حافظه یا ر یع رجیستر ذخيره کل ‪.‬‬
‫•‬
‫راه ح = اس فا ه اي روش آ رس هح )‪.(Segment-Offset‬‬
‫ر این روش حافظه ه خش )‪(Segment‬هایی ه اهدايه ‪ 64k‬ماسیم می شط ‪.‬‬
‫•‬
‫•‬
‫د ی اینکه آ رس هنهه ‪Segment‬هها ر مبنها شهاه ه هه ‪ 0‬خه م مهی شهط (يیهلا رهلای ی اي ‪16‬‬
‫هس ه ه ههتند)س ای ه ه ههن ي ه ه ههفل ک ه ه ههه مد ه ه هها ل ‪ 4‬ی ه ه ههن ي ه ه ههفل ر ه ه ههایهر اس ه ه ههن را ر آ رس ه ه ه ههح ا ه ه ههدا ه ه ه ههل‬
‫‪ Segment‬ر هظ ههل هم ههی گي ههریم و ر هتیم ههه م ههی م ههطاهیم آ رس ه ههل ‪ Segment‬را هها ‪ 16‬ههي‬
‫هنایش هیم‪.‬‬
‫‪11‬‬
‫‪64KB‬‬
‫‪64KB‬‬
‫‪64KB‬‬
‫ابتداي سگمنت‬
‫•‬
‫‪0000‬‬
‫‪ Offset‬لا ه ههل اسه ههن ه هها آ رس یه ههع‬
‫س ه ه ه ه ه ه ه ه طل اي حافظه ه ه ه ه ه ه هههس رو یه ه ه ه ه ه ه ههع‬
‫‪Segment‬س ک ههه لا ههل هها فاي ه ه ه‬
‫س ه ه ه ه طل م ه ه ه ههطر هظه ه ه ههل ر حافظ ه ه ه هههس اي‬
‫ا داي ‪ Segment‬می شط ‪.‬‬
‫ه ه ه ه هلا آ رس ه ه ه ه ه ههح ه ه ه ه ه ههل س ه ه ه ه ه طل اي‬
‫•‬
‫‪X‬‬
‫حافظه هههس ر هه ههل ‪ Segment‬هيه ههاي‬
‫ه ‪ 16‬ين اريم‪.‬‬
‫‪64KB = 216‬‬
‫‪12‬‬
‫‪FFFF‬‬
RAM
SEGMENT : OFFSET
ACF2
ACF2:CF12
CF12
SEGMENT
13
‫• ملح ههه او کل‪ :‬هها ار ههافه ک ههل ي ههفل ح ههذا ش ههدهس آ رس وا ه ه سه ه ننن را مط ي ههد م ههه‬
‫کنيم‪.‬‬
‫• ملح ه وو‪ :‬جنع آ رس شلوع س ننن ا آفسن‪.‬‬
‫• م ال‪ :‬آ رس ‪ 2FC4:412A‬را ه آ رس ‪ 20‬يت‪ ،‬مبدج هناجيد‪:‬‬
‫‪2FC40 +‬‬
‫‪412A‬‬
‫‪------------------‬‬‫‪33D6A‬‬
‫‪14‬‬
‫‪ :Code Segment .1‬س طرات لهامه ر این طده لار ارهد‪.‬‬
‫– هک ه‪ :‬هل لهامهس وما اید یع ‪ Code Segment‬اش ه اشند‪.‬‬
‫‪ :Data Segment .2‬اگههل لهامهه هیههاي هه مدلیهر م شیيههر اشه ه اشههدس ایهن هاحیههه را‬
‫اریم‪.‬‬
‫‪ :Stack Segment .3‬آ رس ها مح ها ايگشن ر مط هع فلاخهطا ی يیهل لهامهه‬
‫ها و ‪...‬س ر این هاحیه که ر وا ع یع پش ه اسن ذخيره می شطهد‪.‬‬
‫‪ :Extra Segment .4‬لا ذخيره اطالقات ندنهطا خهش ارهاوح و ر سه طرات هار‬
‫ا رش ه و ‪...‬س اي این هاحیه اس فا ه می شط ‪.‬‬
‫‪15‬‬
RAM
DATA SEG
DATA
CODE
STACK
CODE SEG
STACK SEG
EXTRA SEG
CODE
EXTRA
DATA
EXTRA
STACK
16
‫• رجيسترهاي س ننن‬
‫• رجيسترهاي ا ه‬
‫• رجيسترهاي اشاره گل‬
‫• رجيسترهاي شاخص‬
‫• رجيستر س طرا دن‬
‫• رجیستر پلچم‬
‫‪17‬‬
.‫ها لهامه را ه هداري مه کنند‬Segment ‫این رجیسترهاس آ رس شلوع‬
15
•
0
CODE SEGMENT(CS)
15
0
STACK SEGMENT (SS)
15
0
DATA SEGMENT(DS)
15
0
EXTRA SEGMENT(ES)
18
‫• ثباتکهاي ‪AX‬س ‪BX‬س ‪CX‬س ‪ DX‬را ثباتکهاي ا هکاي جا ثباتکهاي هنگا ه مهکگطيند‪.‬‬
‫• ثب ههاتک ‪ AX‬را هها مطج ههه ههه اجنک ههه نس ههياري اي ه ههاجگ محاس ههبات ر آ‬
‫ه هلار مهکگيره ههدس گ ههاه آ طمطام ههطر‬
‫(‪ )Accumulator‬هيز مهکهامند‪.‬‬
‫‪15‬‬
‫‪0‬‬
‫‪AX‬‬
‫‪15‬‬
‫‪0‬‬
‫‪BX‬‬
‫‪15‬‬
‫‪0‬‬
‫‪CX‬‬
‫‪15‬‬
‫‪0‬‬
‫‪DX‬‬
‫‪19‬‬
‫•ندض ه ی اي س ه طرا دن ها يمهها ماشههي س ططرخههایس هیههاي ههه یسههی اي ایههن ثبههات ه ها ار ‪.‬‬
‫امها ر مههطر ندضه ی ی ههل اي سه طرا دن هههاس اسه فا ه اي هههل یهع اي ایههن ثبههات هههاس مفهاومی‬
‫همی کند‪.‬‬
‫•اس فا ه ها خای اي ثبات ها‬
‫ا ها ‪:‬‬
‫• ‪ :AX‬لا اهماو محاسبات اس فا ه می شط ‪( .‬رلب و ماسیم)‬
‫• ‪ :BX‬ه قنطا ثبات پایه جهن آ رس هح اس فا ه می شط ‪.‬‬
‫• ‪ :CX‬ه قنطا ثبات شناره اس فا ه می شط ‪.‬‬
‫• ‪ :DX‬یشتر لا قن یات رش ه ا اس فا ه می شط ‪.‬‬
‫‪20‬‬
‫•‬
‫هههل کههداو اي ثباتکهههاي ‪AX‬س ‪BX‬س ‪CX‬س ‪ DX‬را مهکمههطا ههه يههطرت و ثبههات ‪ 8‬يتهه‪،‬‬
‫مس ه ا يدن هه‪ ،‬ه ههر ههاا هلاي ‪ 8‬يههن سههنن چهها و ه ههر پ هها ي هلاي ‪ 8‬يههن س ههنن‬
‫راسنس اس فا ه هنط ‪.‬‬
‫•‬
‫ر اجنمها حهلوا ‪ H‬و ‪ L‬هه ملميهب سهننک هاا ه )‪ (High‬و پها ين‪ (Low) ،‬ثباتکهها‬
‫را شا مهک هند‪.‬‬
‫‪7‬‬
‫‪0‬‬
‫‪8‬‬
‫‪AL‬‬
‫‪0‬‬
‫‪AH‬‬
‫‪7‬‬
‫‪8‬‬
‫‪BL‬‬
‫‪0‬‬
‫‪8‬‬
‫‪CL‬‬
‫‪21‬‬
‫‪15‬‬
‫‪CH‬‬
‫‪7‬‬
‫‪DL‬‬
‫‪15‬‬
‫‪BH‬‬
‫‪7‬‬
‫‪0‬‬
‫‪15‬‬
‫‪8‬‬
‫‪15‬‬
‫‪DH‬‬
‫•‬
‫رجیسترها‬
‫•‬
‫هههاو ایههن رجیسههتر ههها ‪ EAX, EBX, ECX, EDX‬اسههن کههه حههلا ‪ E‬سههلهاو‬
‫‪ Extended‬و ه مدنی مطسده یاف ه می اشد‪.‬‬
‫ا ه ر ‪Pentium‬س ‪ 32‬یتی هستند‪.‬‬
‫‪31‬‬
‫‪0‬‬
‫‪EAX‬‬
‫‪31‬‬
‫‪0‬‬
‫‪EBX‬‬
‫‪31‬‬
‫‪0‬‬
‫‪ECX‬‬
‫‪31‬‬
‫‪0‬‬
‫‪EDX‬‬
‫‪22‬‬
‫‪ .1‬اشاره گل پش ه‪ :‬ر هل لحظه آ رس قن ل ااکه پش ه را ه هداري مه کند‪.‬‬
‫‪15‬‬
‫‪0‬‬
‫)‪(SP‬‬
‫‪STACK POINTR‬‬
‫‪ .2‬اشاره گل پاجه‪ :‬ر روش هاي آ رس ه مطر اس فا ه لار مه گير ‪.‬‬
‫‪15‬‬
‫‪0‬‬
‫)‪BASE POINTER (BP‬‬
‫‪23‬‬
‫•‬
‫ر ندضه ی اي سه طرا دن ههها يمها اسهنبکح هلا اه اهال رشه ه ههها و هار ها حافظههه اي‬
‫ثبات ها شاخص اس فا ه می کنیم‪.‬‬
‫•‬
‫و رجیسه ه ه ههتر شه ه ه ههاخص نه ه ه ههاو هه ه ه هها رجيسه ه ه ههتر مبه ه ه ههدا )‪ (Source‬و رجيسه ه ه ههتر ما ه ه ه ههد‬
‫)‪(Destination‬س لاي اه ااات ط ه ا ه ها اس فا ه می شطهد‪.‬‬
‫‪15‬‬
‫‪0‬‬
‫)‪SOURCE INDEX (SI‬‬
‫‪15‬‬
‫‪0‬‬
‫)‪DESTINATION INDEX (DI‬‬
‫‪24‬‬
‫ثبه ههات اشه ههاره گه ههل س ه ه طرا دن )‪Pointer‬‬
‫•‬
‫‪(Instruction‬‬
‫‪IP‬س آ رس‬
‫س طرا دنک که اجد اجلا شط را ه هداري مه کند‪.‬‬
‫این ثبات ‪ 16‬يت‪ ،‬اسن و ا اجلاي هل سه طر مطسهو واحهد کنتهرلس جهع واحهد افه ايش‬
‫•‬
‫مه جا د‪.‬‬
‫ندنطا م ال س طرات پهلش ها مشیيهر ایهن ثبهات اقهو مهی شهطهد کهه لهامهه کاي ههل محه‬
‫•‬
‫ی ل ا اجلا اشد‪.‬‬
‫‪25‬‬
15 14 13 12
11
10
9
8
R
OF
DF
IF
TF
R
R
R
7
6
SF ZF
5
U
4
3
AF U
2
1
0
PF
U
CF
R = Reserved
ZF = Zero Flag
OF = Overflow
U = Undefined
DF = Direction Flag
AF = Auxiliary Flag
IF = Interrupt Flag
PF = Parity Flag
TF = Trap Flag
CF = Carry Flag
SF = Sign Flag
26
‫مفلیهق اي‬
‫• ‪ ( :Carry Flag‬ین هاکهح) مدنهطاس اي محاسهبات مهاثير مهی پهذیل ‪ .‬هلا اقنهال جنهع و ک‬
‫این ینس لا ر م هاکح اس فا ه می گل ‪ .‬ر اقنالح ماهند ‪ Shift‬ا ین هاس آخلین یهن‬
‫‪ Shift‬ا ه شههدهس ر ایههن یههن هلار مههی گيههر ‪ .‬هنچنههي اگههل ر اقنههال ههل رو اقههدا ههی قالمههن‬
‫سلری رخ هد این ین یع می شط ‪.‬‬
‫• ‪ :Parity Flag‬اي این ینس مدنطا لا اشسال ي ایهی ر اه اهال اطالقهات اسه فا ه مهی شهط ‪.‬‬
‫ه قبارت ی لس لا کنترل صحن اطالقات ه ار می رو ‪ .‬این ین لاساس مددا ین ها‬
‫یههع (‪)1‬س ر ‪ 8‬یههن پههایینی رجیسههترهاس یههع یهها يههفل خطاهههد شههد‪ .‬ههه قنههطا م ههال اگههل سیسه م مهها‬
‫‪ Parity‬فههل اشههدس ر ایههن يههطرت اگههل مدههدا یههن ههها یههع ر ‪ 8‬یههن فههل اشههدس آهگههاه یههن‬
‫‪ Parity‬يفل می شط و اگل مددا ین ها یع يوج اشدس این ین یع خطاهد شد‪.‬‬
‫• ‪ :Auxiliary Flag‬اي این ینس ه قنطا ین جا شي ین ‪ Carry‬اس فا ه می شط ‪ .‬اگل‬
‫این ین یع اشد اي ین ‪ 3‬ه ین ‪ 4‬ر م هاکح اش ه ایم‪.‬‬
‫‪27‬‬
‫• ‪ :Zero Flag‬ر يطرمی که هتیمهه قنه محاسهبامی ‪ 0‬شهده اشهدس ماهدار ایهن یهنس ‪1‬‬
‫می شط ‪ .‬ر غير این يطرت این ین ‪ 0‬خطاهد شد‪.‬‬
‫• ‪ :Sign Flag‬قالمههن هتیمههه محاسههبه شههده ر س ه طر اج هلا شههده بکههح را شهها مههی‬
‫هههد‪ .‬اگههل آخههلین یههن ‪ 0‬اشههد قالمههن م ههن و اگههل ایههن یههن ‪ 1‬ههاش قالمههن هتیمههه منفههی‬
‫اسن‪.‬‬
‫• ‪ :Trap Flag‬لا اجلا س طر ه س طر لهامهس اي ایهن یهن اسه فا ه مهی شهط ‪ .‬اگهل‬
‫این ینس ‪ 1‬اشدس لهامه ه يطرت س طر ه س طر اجلا می گهل و مهی مهطا لهامهه‬
‫را ‪ Trace‬کل ‪.‬‬
‫• ‪ :Interrupt Flag‬ها اسه فا ه اي ایهن یهنس مهی مهطاهیم هار کنهیم کهه و فهه ههاس فدهال‬
‫یا غير فدال گل هد‪.‬‬
‫‪28‬‬
‫و فه ها فدال‬
‫‪IF = 1‬‬
‫و فه ها غير فدال‬
‫‪IF = 0‬‬
‫• ‪ :Direction Flag‬اي ای ههن ی ههنس ه هلا هن ههایش جه ههن قن ی ههاتس ههل رو رشه ه ه ه هها‬
‫اس فا ه می شط ‪ .‬م اا جهن قن یات ماایسه یا اه اال رش ه را مشخص می هناید‪.‬‬
‫‪Left to Right‬‬
‫‪DF=0‬‬
‫‪Right to Left‬‬
‫‪DF=1‬‬
‫هدار ارا سه ههلری‬
‫• ‪ :Overflow‬ر يه ههطرمی که ههه قن ه ه محاسه ههبامی ه ههل رو اقه ههدا قالم ه ه ک‬
‫اشدس مادار این ینس ‪ 1‬می شط و ر غير این يطرت ‪ 0‬خطاهد شد‪.‬‬
‫‪29‬‬
‫‪ ‬حايه مفلیقکهها يیهل را دسهن آور ه و ماها یل پلچمکهها ‪ CF, AF, OF, SF, ZF, PF‬را‬
‫مشخص هنایید‬
‫‪1. 10100100 - 10101011‬‬
‫‪2. 11111111 - 10000000‬‬
‫‪3. 10000000 - 100000‬‬
‫‪4. 10 - 1010101‬‬
‫‪5. 11101 - 10‬‬
‫‪ ‬راهننایی‪ :‬ا دا هنه اقدا را ر ‪ 8‬ین هنایش هید‪.‬‬
‫‪30‬‬
31

similar documents