彙編小寫字母轉換成大寫
阿新 • • 發佈:2019-02-04
小寫轉換大寫
DATAS SEGMENT ;此處輸入資料段程式碼 ORG 1000H;為除錯方便將資料存於指定地址處 BUFFER DB 'hello ASM!tyi20151030' STRLEN EQU $-BUFFER;計算字串的長度 ORG 2000H;便於檢視結果 OUTSTR DB STRLEN DUP(?);預留相同字串儲存空間 DATAS ENDS STACKS SEGMENT ;此處輸入堆疊段程式碼 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX ;此處輸入程式碼段程式碼 MOV CX,STRLEN MOV SI,0 LP1:MOV AL,[SI+BUFFER];取資料 CMP AL,61H JB NEXT CMP AL,7AH JA NEXT SUB AL,20H;若Al在[61H,7AH]範圍內,則為小寫字母,需減20H轉換為大寫字母 NEXT:MOV [SI+OUTSTR],AL;把AL的結果存到OUTSTR中 INC SI;改變指標,便於下一迴圈讀取和儲存資料 LOOP LP1 MOV AH,4CH INT 21H CODES ENDS END START