|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在编写的时候出现以下调试错误:
1、字符串中的单引号',造成编译错误,提前结束了字符串的定义
2、要用字节型比较,al,非ax- assume cs:code
- data segment
- db 'Beginner',39,'s All-purpose Symbolic Instruction Code.',0
- data ends
- stack segment
- dw 16 dup(0) ;32B
- stack ends
- code segment
- start:
- mov ax,stack
- mov ss,ax
- mov sp,32
- mov ax,data
- mov ds,ax
- mov si,0
-
- call letterc
- mov ax,4c00h
- int 21h
- ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- letterc:
- ;参数:ds=要转换的字符串段地址,si=要转换的字符串的起始地址,字符串要以0结束
- ;返回值:将字符串转换为全大写,遇0结束转换
- ;此程序要求栈段的长度为32B
- push ds
- push si
- push ax
- lt_chge:
- mov al,ds:[si]
- cmp al,0
- je lt_ok
- cmp al,61h
- jb lt_s
- cmp al,7ah
- ja lt_s
- sub al,20h
- mov byte ptr ds:[si],al
- lt_s: inc si
- jmp lt_chge
- lt_ok:
- pop ax
- pop si
- pop ds
- ret
-
- code ends
- end start
复制代码 |
评分
-
查看全部评分
|