Intel 80286, 80287 manual Instruction SET

Models: 80287 80286

1 515
Download 515 pages 45.04 Kb
Page 223
Image 223

THE 80286 INSTRUCTION SET

Set CPL to the RPL of the CS selector in the newTSS

If new stack selector is null #TS(SS)

SSselector must be within its descriptor table limits else #TS(SS) SS selector RPL must be equal to CPL else #TS(SS)

OPL of SS descriptor must equal CPL else #TS(SS)

SS descriptor AR byte must indicate writable data segment else #TS(SS) SS descriptor AR byte must indicate PRESENT else #SS(SS)

Load SS cache with new stack segment and set valid bit New CS selector must not be null else #TS(CS)

CS selector must be within its descriptor table limits else #TS(CS) CS descriptor AR byte must indicate code segment else #TS(CS) If non-conforming then OPL must equal CPL else #TS(CS)

If conforming then OPL must be :::; CPL else #TS(CS)

CS descriptor AR byte must indicate PRESENT else #NP(CS) Load CS cache with new code segment descriptor and set valid bit For OS and ES:

If new selector is not null then perform following checks:

Index must be within its descriptor table limits else #TS(segment selector) AR byte must indicate data or readable code else #TS(segment selector) If data or non-conforming code then:

OPL must be 2': CPL else #TS(segment selector)

OPL must be 2': RPL else #TS(segment selector)

AR byte must indicate PRESENT else #NP(segment selector) Load cache with new segment descriptor and set valid bit

8-13

Page 223
Image 223
Intel 80286, 80287 manual Instruction SET