ASMB,R,L,C * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * **************************************************************** * * NAME: PART OF MATH LIBRARY * SOURCE: 24998-18XXX SEE NAM FOR LAST THREE DIGITS * RELOC: PART OF 24998-12001 * PGMR: BG & JTS * HED "MXMND" DOUBLE PRECISION MAXIMUM AND MINIMUM NAM MXMND,7 24998-1X108 REV.2001 750701 ENT DMAX1,DMIN1 EXT .XSUB,.DFER SPC 2 * * CALLING SEQUENCES: ALL VARIABLES ARE DOUBLE PRECISION * JSB DMAX1 JSB DMIN1 * DEF *+(N+2) DEF *+(N+2) * DEF Y DEF Y * DEF X1 DEF X1 * . . . . * . . . . * . . . . * DEF XN DEF XN SPC 2 DMAX1 NOP DOUBLE MAX LDB *-1 CCA SET INDICATOR JMP SETFG DMIN1 NOP DOUBLE MIN LDB *-1 CLA SETFG STB CALAD OCTAL INSTRUCTION: SSA, DMAX1 LDB SSA STB SKFLG SZA ISZ SKFLG LDA CALAD = ADDRESS OF (DEF *+N+2) = * CMA,INA = -* ADA CALAD,I = -* + * + N + 2 = N + 2 ADA =D-2 = N CMA,INA STA N = -N ISZ CALAD LDB CALAD,I STB Y = ADDRESS OF RESULT INA SSA N < 2 ? JMP ARGOK NO. PROCESS LIST LDA ADZRO YES. STA ANS SET RESULT TO ZERO LDA CALAD ADA =D-1 LDB 0,I STB CALAD SET RETURN ADDRESS JMP EXIT AND EXIT ARGOK ISZ CALAD CALAD POINTS TO X1 LDA CALAD,I STA ANS ANS = ADDRESS OF CURRENT ANSWER ISZ CALAD ISZ N DONE ? JMP TESTM NO. EXIT JSB .DFER YES. STORE RESULT Y DEF * DEF ANS,I JMP CALAD,I CALAD NOP ZERO DEC 0,0,0 TESTM LDA CALAD,I STA ADARG STORE ADDRESS OF ARG FOR XSUB SUBTR JSB .XSUB DBL = ARG - ANS DEF DBL ADARG NOP ANS NOP ADDRESS OF ANSWER LDA DBL SKFLG NOP SKIP FLAG FOR MIN OR MAX JMP ARGOK+1 NEW ANSWER JMP ARGOK+3 CURRENT ANSWER OKAY N NOP NUMBER ARGUMENTS DBL REP 3 ARG - ANS NOP ADZRO DEF ZERO USED IF N < 2 SSA SSA END *