Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
304 words
A computer aided software engineering process adapted to identify potential source code errors by the analysis of Assembly language statements, the process including the steps of: A) establishing, in the computer system with which the program in development is being debugged, a software representation of the architecture of the computer system upon which the program in development will be eventually used; B) loading the first statement of the program in development for analysis; C) examining the statement to determine if the address field of the corresponding instruction contains a symbolic address construct; D) if the result of step C is: 1) that the instruction does contain a symbolic address construct, going to step E; 2) that the instruction does not contain a symbolic address construct, going to step I; E) determining if the symbol is a member of a family of symbols which require a special type of address modification; F) if the result of step E is: 1) that the symbol is a member of a family of symbols which require a special type of address modification, going to step G; 2) that the symbol is not a member of a family of symbols which require a special type of address modification, going to step J; G) determining whether proper modifiers have been used to reference the symbol; H) if the result of step G is: 1) that proper modifiers have been used to reference the symbol, going to step J; 2) that improper modifiers have been used to reference the symbol, issuing a warning message and then going to step K; I) conducting any literal address field tests provided for analyzing the loaded statement; J) conducting any supplementary tests provided for analyzing the loaded statement; K) loading the next statement of the program in development for analysis, and proceeding to step C.
Claim 2
Dependent Claim
304 words
A computer aided software engineering process adapted to identify potential source code errors by the analysis of Assembly language statements, the process including the steps of: A) establishing, in the computer system with which the program in development is being debugged, a software representation of the architecture of the computer system upon which the program in development will be eventually used; B) loading the first statement of the program in development for analysis; C) examining the statement to determine if the address field of the corresponding instruction contains a symbolic address construct; D) if the result of step C is: 1) that the instruction does contain a symbolic address construct, going to step E; 2) that the instruction does not contain a symbolic address construct, going to step I; E) determining if the symbol is a member of a family of symbols which require a special type of address modification; F) if the result of step E is: 1) that the symbol is a member of a family of symbols which require a special type of address modification, going to step G; 2) that the symbol is not a member of a family of symbols which require a special type of address modification, going to step J; G) determining whether proper modifiers have been used to reference the symbol; H) if the result of step G is: 1) that proper modifiers have been used to reference the symbol, going to step J; 2) that improper modifiers have been used to reference the symbol, issuing a warning message and then going to step K; I) conducting any literal address field tests provided for analyzing the loaded statement; J) conducting any supplementary tests provided for analyzing the loaded statement; K) loading the next statement of the program in development for analysis, and proceeding to step C.
Claim 3
Dependent Claim
270 words
The computer aided software engineering process of claim 1 which includes, in step I, the substeps of: Ia) determining if the address field is a literal; Ib) if the results of step Ia is: Ib1) that the address field is a literal, going to step Ic; Ib2) that the address field is not a literal, going to step J; Ic) determining if the literal address field is a decimal; Id) if the results of step Ic is: Id1) that the literal address field is a decimal, going to step Ig; Id2) that the literal address field is not a decimal, going to step Ie; Ie) determining if the literal is larger than can be accommodated in a machine word address field; If) if the results of step Ie is: If1) that the literal is larger than can be accommodated in a machine word address field, issuing a warning message and then going to step K; If2) that the literal is not larger than can be accommodated in a machine word address field, going to step K; Ig) determining if the called for operation is Boolean; Ih) if the results of step Ig is: Ih1) that the called for operation is Boolean, issuing a warning message and then going to step K; Ih2) that the called for operation is not Boolean, going to step Ij; Ij) determining if the literal contains contiguous sevens; Ik) if the results of step Ij is: Ik1) that the literal contains contiguous sevens, issuing a warning message and then going to step K; Ik2) that the literal does not contain contiguous sevens, going to step Ie.
Claim 4
Dependent Claim
88 words
The computer aided software engineering process of claim 2 which further includes, in step J, the substeps of: J1a) determining if the address field does not exceed a predetermined maximum value; J1b) if the result of stem J1a is: J1b1) that the address field exceeds a predetermined maximum value, issuing a warning message and then going to step K; J1b2) that the address field does not exceed a predetermined maximum value, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement.
Claim 5
Dependent Claim
136 words
The computer aided software engineering process of claim 2 which further includes, in step J, the substeps of: J2a) determining if the specified operation is a call to another module; J2b) if the result of step J1a is: J2b1) that the specified operation is a call to another module, going to step J2c; J2b2) that the specified operation is not a call to another module, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement; J2c) determine the validity of the call; J2d) if the result of step J2c is: J2c1) that the call is valid, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement; J2c2, that the call is invalid, issuing a warning message and then going to step K.
Claim 6
Dependent Claim
139 words
The computer aided software engineering process of claim 2 which further includes, in step J, the substeps of: J3a) determining if the statement invokes a privileged instruction; J3b) if the result of step J3a is: J3b1) that the statement does not invoke a privileged instruction, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement; J3b2) that the statement dose invoke a privileged instruction, going to step J3c; J3c) determining if intended execution environment permits use of the privileged instruction; J3c1) if the intended execution environment does not permit use of the privileged instruction, issuing a warning message and going to step K; J3c2) if the intended execution environment permits use of the privileged instruction, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement.
Claim 7
Dependent Claim
88 words
The computer aided software engineering process of claim 1 which further includes, a step J, the substeps of: J1a) determining if the address field does not exceed a predetermined maximum value; J1b) if the result of stem J1a is: (J1b1) that the address field exceeds a predetermined maximum value, issuing a warning message and then going to step K; J1b2) that the address field does not exceed a predetermined maximum value, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement.
Claim 8
Dependent Claim
136 words
The computer aided software engineering process of claim 1 which further includes, in step J, the substeps of: J2a) determining if the specified operation is a call to another module; J2b) if the result of step J1a is: J2b1) that the specified operation is a call to another module, going to step J2c; J2b2) that the specified operation is not a call to another module, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement; J2c) determining the validity of the call; J2d) if the result of step J2c is: J2c1) that the call is valid, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement; J2c2) that the call is invalid, issuing a warning message and then going to step K.
Claim 9
Dependent Claim
139 words
The computer aided software engineering process of claim 1 which further includes, in step J, the substeps of: J3a) determining if the statement invokes a privileged instruction; J3b) if the result of step J3a is: J3b1) that the statement does not invoke a privileged instruction, continuing with any remaining literal address field tests provided in step J) for analyzing the loaded statement; J3b2) that the statement dose invoke a privileged instruction, going to step J3c; J3c) determining if intended execution environment permits use of the privileged instruction; J3c1) if the intended execution environment does not permit use of the privileged instruction, issuing a warning message and going to step K; j3c2) if the intended execution environment permits use of the privileged instruction, continuing with any remaining literal address field tests provided in step J for analyzing the loaded statement.