bastore

uloženie bajtového/boolovského poľa

Jasmin syntax  

 
    bastore
 

Zásobník

 

Pred

Po

value

...

index

 

arrayref

 

...

 

Popis

Zoberie 32-bitový int zo zásobnika, upraví ho na 8-bitový bajt so znamienkom, a uloží ho v poli bajtov. arrayref je referencia na pole bajtov. index je int. value je int hodnota, ktorá bude uložená v poli. arrayref, index a value sú odstránené zo zásobníka, value je upravená na 8 bitov a uložená v poli na danom indexe.

bastore sa tiež používa na ukladanie hodnôt do boolovských polí. V takomto prípade, arrayref je referencia na boolovské pole (pozri inštrukciu newarray) . Ak je hodnota nula, false je uložený na danom indexe v poli, ináč je uložené true. V implementácii Sun-u, boolovské polia sa ukladajú ako bajtové polia, používajúc jeden bajt pre každú boolean hodnotu. Iná implementácia môže používať zbalené polia – alebo skôr int polia – pre programy používajúce JVM to nie je viditeľné, ktoré vždy používajú baload a bastore na prístup a ukladanie hodnôt do boolovských polí.

Výnimky

NullPointerException - arrayref je null

ArrayIndexOutOfBoundsException - index je < 0 alebo >= arrayref.length

Bajtkód

Typ

Popis

u1

bastore opcode = 0x54 (84)

Pozri tiež

iastore, lastore, fastore, dastore, aastore, castore, sastore, iaload, laload, faload, daload, aaload, baload, caload, saload, newarray,

Poznámky

1. Indexy poľa začínajú na hodnote 0 (prvá položka v poli má index 0).