4.6.3 Byte Insert

Format:

INSxxRa.rq,Rb.rq,Rc.wq

INSxxRa.rq,#b.ib,Rc.wq

Operation:

CASE

big_endian_data: Rbv’ Rbv XOR 1112

little_endian_data: Rbv’ Rbv

ENDCASE

CASE

INSBL: byte_mask 0000 0000 0000 00012

INSWx: byte_mask 0000 0000 0000 00112

INSLx: byte_mask 0000 0000 0000 11112

INSQx: byte_mask 0000 0000 1111 11112

ENDCASE

byte_mask LEFT_SHIFT(byte_mask, Rbv’<2:0>)

CASE INSxL:

byte_loc Rbv’<2:0>*8

temp LEFT_SHIFT(Rav, byte_loc<5:0>) Rc BYTE_ZAP(temp, NOT(byte_mask<7:0>))

INSxH:

byte_loc 64 - Rbv’<2:0>*8

temp RIGHT_SHIFT(Rav, byte_loc<5:0>) Rc BYTE_ZAP(temp, NOT(byte_mask<15:8>))

ENDCASE

Exceptions:

 

None

 

Instruction mnemonics:

 

INSBL

Insert Byte Low

INSWL

Insert Word Low

INSLL

Insert Longword Low

INSQL

Insert Quadword Low

INSWH

Insert Word High

INSLH

Insert Longword High

INSQH

Insert Quadword High

!Operate format

!Operate format

Instruction Descriptions 4–55

Page 111
Image 111
Compaq ECQD2KCTE manual Byte Insert, Format