ZALR ACC,loc16
6-394
ZALR ACC,loc16
Zero AL and Load AH With Rounding
SYNTAX OPTIONS
OPCODE
OBJMODE
RPT
CYC
ZALR ACC,loc16
0101 0110 0001 0011
0000 0000 LLLL LLLL
1
−
1
Operands
ACC
Accumulator register
loc16
Addressing mode (see Chapter 5)
Description
Load low accumulator (AL) with the value 0x8000 and load high accumulator
(AH) with the 16-bit contents pointed to by the ”loc16” addressing mode.
AH = [loc16];
AL = 0x8000;
Flags and
Modes
N
The load to ACC is tested for a negative condition. If bit 31 of ACC is 1, then
the negative flag bit is set; otherwise it is cleared.
Z
The load to ACC is tested for a zero condition. The zero flag bit is set if the
operation generates ACC = 0; otherwise it is cleared
Repeat
This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
Example
; Calculate: Y = round(M*X << 1 + B << 16)
; Y, M, X, B are all Q15 numbers
SPM +1
; Set product shift mode to << 1
MOV T,@M
; T = M (Q15)
MPY P,T,@X
; P = M * X (Q30)
ZALR ACC,@B
; ACC = B << 16 + 0x8000 (Q31)
ADDL ACC,P << PM
; Add P to ACC with shift (Q31)
MOV @Y,AH
; Store AH into Y (Q15)
Summary of Contents for TMS320C28x
Page 30: ...1 12...
Page 80: ...This page intentionally left blank 2 50 This page intentionally left blank...
Page 269: ...IN loc16 PA 6 112 MOV AL 0 AL 0 UOUT IORegC AL IOspace IORegC AL 10...
Page 308: ...MAXCUL P loc32 6 151 Saturate MOVL Var64 2 ACC Store result into Var64 MOVL Var64 P...
Page 509: ...SUBL ACC P PM 6 352 SUBL ACC P PM ACC S B 11 M X 4 MOVH Y ACC 5 Store Q15 result into Y...
Page 585: ...This page intentionally left blank 7 32 This page intentionally left blank...