Spec-Zone .ru
спецификации, руководства, описания, API
Содержание | Предыдущий | Следующий | ИндексСпецификация Виртуальной машины JavaTM


A B C D F Г Я J L М. N P R S T W

baload

Работа

Загрузка byte или boolean от массива

Формат

baload

Формы

baload = 51 (0x33)

Стек операнда

..., arrayref, индекс..., значение

Описание

arrayref должен иметь тип reference и должен обратиться к массиву, компоненты которого имеют тип byte или типа boolean. Индекс должен иметь тип int. И arrayref и индекс выталкиваются от стека операнда. Если компоненты массива имеют тип byte, компонент массива по индексу получается и расширяется до знака на int значение. Если компоненты массива имеют тип boolean, компонент массива по индексу получается и расширяется до нуля на int значение. В любом случае получающееся значение продвигается на стек операнда.

Исключения на этапе выполнения

Если arrayref null, baload бросает a NullPointerException.

Иначе, если индекс не в пределах границ массива, на который ссылается arrayref, baload инструкция бросает ArrayIndexOutOfBoundsException.

Примечания

baload инструкция используется, чтобы загрузить значения от обоих byte и boolean массивы. В реализации Sun виртуальной машины Java, boolean массивы (массивы типа T_BOOLEAN; см. §3.2, и описание newarray инструкции в этой главе) реализуются как массивы 8-разрядных значений. Другие реализации могут реализовать упакованный boolean массивы; baload инструкция таких реализаций должна использоваться, чтобы получить доступ к тем массивам.


bastore

Работа

Хранилище в byte или boolean массив

Формат

bastore

Формы

bastore = 84 (0x54)

Стек операнда

..., arrayref, индекс, оценивают...

Описание

arrayref должен иметь тип reference и должен обратиться к массиву, компоненты которого имеют тип byte или типа boolean. Индекс и значение должны оба иметь тип int. arrayref, индекс, и значение выталкиваются от стека операнда. Если компоненты массива имеют тип byte, int значение является усеченным к a byte и сохраненный, поскольку компонент массива индексируется индексом. Если компоненты массива имеют тип boolean, int значение является усеченным к своему биту младшего разряда, тогда расширенному до нуля на размер хранения для компонентов boolean массивы используются реализацией. Результат сохранен как компонент массива, индексированного индексом.

Исключения на этапе выполнения

Если arrayref null, bastore бросает a NullPointerException.

Иначе, если индекс не в пределах границ массива, на который ссылается arrayref, bastore инструкция бросает ArrayIndexOutOfBoundsException.

Примечания

bastore инструкция используется, чтобы сохранить значения в обоих byte и boolean массивы. В реализации Sun виртуальной машины Java, boolean массивы (массивы типа T_BOOLEAN; см. §3.2, и описание newarray инструкции в этой главе) реализуются как массивы 8-разрядных значений. Другие реализации могут реализовать упакованный boolean массивы; в таких реализациях bastore инструкция должна быть в состоянии сохранить boolean значения в упакованный boolean массивы так же как byte значения в byte массивы.


bipush

Работа

Продвинуть byte

Формат

bipush
байт

Формы

bipush = 16 (0x10)

Стек операнда

......, значение

Описание

Непосредственный байт расширяется до знака на int значение. То значение продвигается на стек операнда.


Содержание | Предыдущий | Следующий | Индекс

Спецификация Виртуальной машины JavaTM
Авторское право © Sun Microsystems, Inc 1999 года. Все права защищены
Пожалуйста, отправьте любые комментарии или исправления к jvm@java.sun.com

free hit counter