Андрей Газибаров


без тайни

Инструкциите On-line

BOUND
Проверка на граници
Обща форма: BOUND source, limits
Форма КОП CPUID I8086 I80386 I80486
16 32 64 Alt   I8086 I80386 I80486
BOUND rb,mbb       4C /r x86-64   18 11
BOUND rw,mww 62 /r 66 62 /r   4D /r x86-64   18 11
BOUND rd,mdd 66 62 /r 62 /r   4E /r x86-64   18 11
BOUND rq, mqq       4F /r x86-64   7 7
BOUND rb,ib,ib       91 /3 ib ib x86-64   18 11
BOUND rw,iw,iw       92 /3 iw iw x86-64   18 11
BOUND rd,id,id       93 /3 id id x86-64   18 11
BOUND rq,iq,iq         x86-64   18 11
BOUND rb,0,ib       94 /3 ib x86-64   18 11
BOUND rw,0,ib       95 /3 ib x86-64   18 11
BOUND rd,0,ib       96 /3 ib x86-64   18 11
BOUND rw,0,iw       97 /3 iw x86-64   18 11
BOUND rd,0,iw       98 /3 iw x86-64   18 11
BOUND rd,0,id       99 /3 id x86-64   18 11
Действие IF (source < limits) OR (source > limits[1]) THEN
  #BR
ENDIF
  Инструкцията е предназначена за езици от високо ниво, които подобно на Pascal реализират ограничени типове данни и проверка на стойности и индекси по време на изпълнение. Тя проверява дали операндът е в зададените граници и ако не генерира изключение.
Флагове
PE VM NT IOPL OF DF IF TF SF ZF AF PF CF
                         
CPU
8086 186 V20 286 386 486 P P-P P-II MMX SSE 3D! E64
  • • • • • • • •       —
Изключения ОБЩИ +
Всички режими:
#UD Операнд limits е зададен в регистър
#BR Стойността на операнд source е извън границите, зададени с операнд limits
 
Съдържание Пълен текст
 
  PDF, 3.6M Приложение, 18К