文档介绍:类型:1、a)Yn=-100 Xn<-100
b) Yn=Xn /Xn/<=100
c)Yn=100 Xn>100
; *** BEGIN ***
LEA SI,SOURCE
LEA DI,RESULT
MOV CX,N
NEXT: MOV AL,[SI]
CMP AL,- MAX_VAL
JL LESS
CMP AL, MAX_VAL
JNG STORE
MOV AL, MAX_VAL
JMP STORE
LESS: MOV AL, - MAX_VAL
STORE: MOV [DI],AL
INC DI
INC SI
LOOP NEXT
; **** END ****
2、A\D转换器; *** BEGIN ***
LEA SI,SOURCE
LEA DI,RESULT
MOV CX,N
NEXT: MOV AL,[SI]
CMP AL,-DELTA
JL LESS
CMP AL,DELTA
JG GREAT
MOV AL,0
JMP STORE
GREAT: SUB AL,DELTA
JMP STORE
LESS: ADD AL,DELTA
STORE: MOV [DI],AL
INC SI
INC DI
LOOP NEXT
; **** END ****
3A\D转换器; **** BEGIN ****
LEA SI,SOURCE
LEA DI,RESULT
CLD
MOVSB ; Y[0]=X[0]
MOV CX,N-1
FILTER:
XOR AX,AX
XOR BX,BX
XOR DX,DX
LODSB ; X[n]
MOV BL, [DI-1] ; Y[n-1]->BL
MOV DL,BL
ADD BX,DELTA ; Y[n-1]+delta,符号位扩展
SUB DX,DELTA ; Y[n-1]-delta,符号位扩展
CMP AX,BX
JNA NEXT
MOV [DI],BX
JMP CONT
NEXT: CMP AX,DX
JNAE STORE
MOV [DI],AX
JMP CONT
STORE: MOV [DI],DX
CONT: INC DI
LOOP FILTER
; **** END ****
B(I)和A(I);
**** BEGIN ****
LEA SI,A
LEA DI,B
MOV AL,[SI] ;B[1]=A[1]
MOV [DI],AL
MOV AL,[SI+N-1]
MOV [DI+N-1],AL
INC SI
INC DI
MOV CX,N-2
L0: XOR AX,AX
XOR BX,BX
XOR DX,DX
MOV AL,[SI]
MOV BL,[SI-1]
MOV DL,[SI+1]
SHL AX,1
ADD AX,BX
ADD AX,DX
SHR AX,1
SHR AX,1
MOV [DI],AL
INC SI
INC DI
LOOP