home *** CD-ROM | disk | FTP | other *** search
- CODE SEGMENT BYTE PUBLIC
- ASSUME CS:CODE
-
- PUBLIC UpperCase
-
- ;function UpperCase(S : String) : String
-
- UpperRes EQU DWORD PTR [BP+0Ah]
- UpperStr EQU DWORD PTR [BP+06h]
-
- UpperCase PROC FAR
-
- PUSH BP
- MOV BP,SP
- PUSH DS
- LDS SI,UpperStr
- LES DI,UpperRes
- CLD
- LODSB
- STOSB
- MOV CL,AL
- XOR CH,CH
- JCXZ ExitCode
-
- LowerLoop:
- LODSB
- CMP AL,'a'
- JB CopyChar
- CMP AL,'z'
- JA CopyChar
- SUB AL,'a'-'A'
-
- CopyChar:
- STOSB
- LOOP LowerLoop
-
- ExitCode:
- POP DS
- POP BP
- RET 04h
-
- UpperCase ENDP
-
- CODE ENDS
- END