1) 标号: BCDA 功能:多字节BCD码加法 入口条件:字节数在R7中,被加数在[R0]中,加数在[R1]中。 出口信息:和在[R0]中,最高位进位在CY中。 影响资源:PSW、A、R2 堆栈需求: 2字节 2) 标号: BCDB 功能:多字节BCD码减法 入口条件:字节数在R7中,被减数在[R0]中,减数在[R1]中。 出口信息:差在[R0]中,最高位借位在CY中。 影响资源:PSW、A、R2、R3 堆栈需求: 6字节 3) 标号: NEG 功能:多字节BCD码取补 入口条件:字节数在R7中,操作数在[R0]中。 出口信息:结果仍在[R0]中。 影响资源:PSW、A、R2、R3 堆栈需求: 2字节 4) 标号: BRLN 功能:多字节BCD码左移十进制一位(乘十) 入口条件:字节数在R7中,操作数在[R0]中。 出口信息:结果仍在[R0]中,移出的十进制最高位在R3中。 影响资源:PSW、A、R2、R3 堆栈需求: 2字节 (5) 标号: MULD 功能:双字节二进制无符号数乘法 入口条件:被乘数在R2、R3中,乘数在R6、R7中。 出口信息:乘积在R2、R3、R4、R5中。 影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 6) 标号: MUL2 功能:双字节二进制无符号数平方 入口条件:待平方数在R2、R3中。 出口信息:结果在R2、R3、R4、R5中。 影响资源:PSW、A、B、R2~R5 堆栈需求: 2字节 7) 标号: DIVD 功能:双字节二进制无符号数除法 入口条件:被除数在R2、R3、R4、R5中,除数在R6、R7中。 出口信息:OV=0 时,双字节商在R2、R3中,OV=1 时溢出。 影响资源:PSW、A、B、R1~R7 堆栈需求: 2字节 8) 标号: D457 功能:双字节二进制无符号数除以单字节二进制数 入口条件:被除数在R4、R5中,除数在R7中。 出口信息:OV=0 时,单字节商在R3中,OV=1 时溢出。 影响资源:PSW、A、R3~R7 堆栈需求: 2字节 9) 标号: DV31 功能:三字节二进制无符号数除以单字节二进制数 入口条件:被除数在R3、R4、R5中,除数在R7中。 出口信息:OV=0 时,双字节商在R4、R5中,OV=1 时溢出。 影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 10) 标号: MULS 功能:双字节二进制有符号数乘法(补码) 入口条件:被乘数在R2、R3中,乘数在R6、R7中。 出口信息:乘积在R2、R3、R4、R5中。 影响资源:PSW、A、B、R2~R7 堆栈需求: 4字节 (11) 标号: DIVS 功能:双字节二进制有符号数除法(补码) 入口条件:被除数在R2、R3、R4、R5中,除数在R6、R7中。 出口信息:OV=0时商在R2、R3中,OV=1时溢出。 影响资源:PSW、A、B、R1~R7 堆栈需求: 5字节 12) 标号: SH2 功能:双字节二进制无符号数开平方(快速) 入口条件:被开方数在R2、R3中。 出口信息:平方根仍在R2、R3中,整数部分的位数为原数的一半,其余为小数。 影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 (13) 标号: SH4 功能:四字节二进制无符号数开平方(快速) 入口条件:被开方数在R2、R3、R4、R5中。 出口信息:平方根在R2、R3中,整数部分的位数为原数的一半,其余为小数。 影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 (14) 标号: HASC 功能:单字节十六进制数转换成双字节ASCII码 入口条件:待转换的单字节十六进制数在累加器A中。 出口信息:高四位的ASCII码在A中,低四位的ASCII码在B中。 影响资源:PSW、A、B 堆栈需求: 4字节 15) 标号: ASCH 功能:ASCII码转换成十六进制数 入口条件:待转换的ASCII码(30H~39H或41H~46H)在A中。 出口信息:转换后的十六进制数(00H~0FH)仍在累加器A中。 影响资源:PSW、A 堆栈需求: 2字节 16) 标号:HBCD 功能:单字节十六进制整数转换成单字节BCD码整数 入口条件:待转换的单字节十六进制整数在累加器A中。 出口信息:转换后的BCD码整数(十位和个位)仍在累加器A中,百位在R3中。 影响资源:PSW、A、B、R3 堆栈需求: 2字节 (17) 标号: HB2 功能:双字节十六进制整数转换成双字节BCD码整数 入口条件:待转换的双字节十六进制整数在R6、R7中。 出口信息:转换后的三字节BCD码整数在R3、R4、R5中。 影响资源:PSW、A、R2~R7 堆栈需求: 2字节 (18) 标号: HBD 功能:单字节十六进制小数转换成单字节BCD码小数 入口条件:待转换的单字节十六进制小数在累加器A中。 出口信息:CY=0时转换后的BCD码小数仍在A中。CY=1时原小数接近整数1。 影响资源:PSW、A、B 堆栈需求: 2字节 (19) 标号: HBD2 功能:双字节十六进制小数转换成双字节BCD码小数 入口条件:待转换的双字节十六进制小数在R2、R3中。 出口信息:转换后的双字节BCD码小数仍在R2、R3中。 影响资源:PSW、A、B、R2、R3、R4、R5 堆栈需求: 6字节 (20)标号:BCDH 功能:单字节BCD码整数转换成单字节十六进制整数 入口条件:待转换的单字节BCD码整数在累加器A中。 出口信息:转换后的单字节十六进制整数仍在累加器A中。 影响资源:PSW、A、B、R4 堆栈需求: 2字节 (21)标号: BH2 功能:双字节BCD码整数转换成双字节十六进制整数 入口条件:待转换的双字节BCD码整数在R2、R3中。 出口信息:转换后的双字节十六进制整数仍在R2、R3中。 影响资源:PSW、A、B、R2、R3、R4 堆栈需求: 4字节 (22)标号: BHD 功能:单字节BCD码小数转换成单字节十六进制小数 入口条件:待转换的单字节BCD码数在累加器A中。 出口信息:转换后的单字节十六进制小数仍在累加器A中。 影响资源:PSW、A、R2、R3 堆栈需求: 2字节 23)标号: BHD2 功能:双字节BCD码小数转换成双字节十六进制小数 入口条件:待转换的双字节BCD码小数在R4、R5中。 出口信息:转换后的双字节十六进制小数在R2、R3中。* 影响资源:PSW、A、R2~R6 堆栈需求: 2字节 (24) 标号: MM 功能:求单字节十六进制无符号数据块的极值 入口条件:数据块的首址在DPTR中,数据个数在R7中。 出口信息:最大值在R6中,地址在R2R3中;最小值在R7中,地址在R4R5中。 影响资源:PSW、A、B、R1~R7 堆栈需求: 4字节 (25) 标号: MMS 功能:求单字节十六进制有符号数据块的极值 入口条件:数据块的首址在DPTR中,数据个数在R7中。 出口信息:最大值在R6中, 地址在R2R3中;最小值在R7中,地址在R4R5中。 影响资源:PSW、A、B、R1~R7 堆栈需求: 4字节 (26) 标号: FDS1 功能:顺序查找(ROM)单字节表格 入口条件:待查找的内容在A中,表格首址在DPTR中,表格的字节数在R7中。 出口信息:OV=0时,顺序号在累加器A中;OV=1时,未找到。 影响资源:PSW、A、B、R2、R6 堆栈需求: 2字节 (27) 标号: FDS2 功能:顺序查找(ROM)双字节表格 入口条件:查找内容在R4、R5中,表格首址在DPTR中,数据总个数在R7中。 出口信息:OV=0时顺序号在累加器A中,地址在DPTR中;OV=1时未找到。 影响资源:PSW、A、R2、R6、DPTR 堆栈需求: 2字节 (28) 标号:FDD1 功能:对分查找(ROM)单字节无符号增序数据表格 入口条件:待查找的内容在累加器A中,表格首址在DPTR中,字节数在R7中。 出口信息:OV=0 时,顺序号在累加器A中;OV=1 时,未找到。 影响资源:PSW、A、B、R2、R3、R4 堆栈需求: 2字节 (29) 标号:FDD2 功能:对分查找(ROM)双字节无符号增序数据表格 入口条件:查找内容在R4、R5中,表格首址在DPTR中,数据个数在R7中。 出口信息:OV=0 时顺序号在累加器A中,址在DPTR中;OV=1 时未找到。 影响资源:PSW、A、B、R1~R7、DPTR 堆栈需求: 2字节 (30) 标号: DDM1 功能:求单字节十六进制无符号数据块的平均值 入口条件:数据块的首址在DPTR中,数据个数在R7中。 出口信息:平均值在累加器A中。 影响资源:PSW、A、R2~R6 堆栈需求: 4字节 (31) 标号: DDM2 功能:求双字节十六进制无符号数据块的平均值 入口条件:数据块的首址在DPTR中,双字节数据总个数在R7中。 出口信息:平均值在R4、R5中。 影响资源:PSW、A、R2~R6 堆栈需求: 4字节 (32) 标号: XR1 功能:求单字节数据块的(异或)校验和 入口条件:数据块的首址在DPTR中,数据的个数在R6、R7中。 出口信息:校验和在累加器A中。 影响资源:PSW、A、B、R4~R7 堆栈需求: 2字节 (33) 标号: XR2 功能:求双字节数据块的(异或)校验和 入口条件:数据块的首址在DPTR中,双字节数据总个数在R6、R7中。 出口信息:校验和在R2、R3中。 影响资源:PSW、A、R2~R7 堆栈需求: 2字节 (34) 标号: SORT 功能:单字节无符号数据块排序(增序) 入口条件:数据块的首址在R0中,字节数在R7中。 出口信息:完成排序(增序) 影响资源:PSW、A、R2~R6 堆栈需求: 2字节