
47
CHAPTER 2 BASICS OF SOFTWARE
(3) Program list
;******************************************************************
;
;
Input parameter
;
HL register: subtrahend first address
;
DE register: minuend first address
;
Output parameter
;
HL register: Operation result first address
;
;******************************************************************
*
*
*
*
*
*
*
PUBLIC BYTNUM
PUBLIC BCDSUB
EXTRN
BCDADD,BCDAD2
;
BYTNUM EQU
;
4
CSEG
BCDSUB:
MOV
C,#BYTNUM
BCDSU1:
MOV
MOV
DEC
A,C
B,A
B
MOV
MOV1
NOT1
MOV1
MOV
CALL
RET
A,[HL+BYTNUM–1]
CY,A.7
CY
A.7,CY
[HL+BYTNUM–1],A
!BCDAD2
; Sets number of digits for operation
; Sets number of digits for operation to C register
; Sets MSB (sign data) of subtrahend for addition
; Inverts sign data
; Calls decimal addition processing