鱼C论坛

 找回密码
 立即注册
查看: 2019|回复: 14

把字符串改为大写再显示

[复制链接]
发表于 2012-11-21 21:44:12 | 显示全部楼层 |阅读模式
5鱼币
将数据段中的字符转化为大写,然后在第八行第三列显示.大家看下我代码哪里错了啊!
assume cs:codesg
datasg segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
datasg ends
stack segment
dw 8 dup(0)
stack ends
codesg segment
begin: mov ax,datasg
mov ds,ax
mov si,0
mov ax,stack
mov ss,ax
mov sp,8
        mov dh,8   
        mov dl,3
call letterc
call show_str
mov ax,4c00h
int 21h
letterc:push ax
push si
mov ch,0
mov cl,[si]
jcxz s2
s:mov al,[si]
cmp al,'a'
jb s1
cmp al,'z'
ja s1
and al,11011111b
mov [si],al
s1:inc si
jmp letterc
s2:pop si
pop ax
ret
show_str:push ax
push si
push dx
mov ax,0b800h
mov es,ax
mov ax,160
mul dh
mov bx,ax
mov ax,2
mul dl
add bx,ax
mov al,2
mov cl,0
s3:
mov ch,[si]
jcxz s4
mov es:[bx],ch
mov es:[bx+1],al
inc si
add bx,2
jmp s3
s4:pop dx
pop si
pop ax
ret
codesg ends
end begin


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-21 21:53:25 | 显示全部楼层
斌少,你先说说cmd提示什么错误啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-11-21 21:58:48 | 显示全部楼层
没错误,运行的时候显示不出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-11-22 10:22:53 | 显示全部楼层
首先映入眼帘的错误是assume cs:codesg,缺少ds,ss,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-11-22 12:13:32 | 显示全部楼层

这个不是问题吧.没有也可以的,课本上也是这样的.我检查出来错误了,是letterc里面跳转写错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-11-22 21:21:00 | 显示全部楼层
  1. assume cs:codesg
  2. datasg segment
  3. db "Beginner's All-purpose Symbolic Instruction Code.",0
  4. datasg ends
  5. stack segment
  6. dw 8 dup(0)
  7. stack ends
  8. codesg segment
  9. begin: mov ax,datasg
  10. mov ds,ax
  11. mov si,0
  12. mov ax,stack
  13. mov ss,ax
  14. mov sp,8
  15.         mov dh,8   
  16.         mov dl,3
  17. call letterc
  18. call show_str
  19. mov ax,4c00h
  20. int 21h  


  21. letterc:push ax
  22. push si
  23. letterc1:mov ch,0     ;此处加了标号
  24. mov cl,[si]
  25. jcxz s2
  26. s:mov al,[si]
  27. cmp al,'a'
  28. jb s1
  29. cmp al,'z'
  30. ja s1
  31. and al,11011111b
  32. mov [si],al
  33. s1:inc si
  34. jmp letterc1          ;修改了这里的标号
  35. s2:pop si
  36. pop ax
  37. ret
  38. show_str:push ax
  39. push si
  40. push dx
  41. mov ax,0b800h
  42. mov es,ax
  43. mov ax,160
  44. mul dh
  45. mov bx,ax
  46. mov ax,2
  47. mul dl
  48. add bx,ax
  49. mov al,2
  50. mov cl,0
  51. s3:
  52. mov ch,[si]
  53. jcxz s4
  54. mov es:[bx],ch
  55. mov es:[bx+1],al
  56. inc si
  57. add bx,2
  58. jmp s3
  59. s4:pop dx
  60. pop si
  61. pop ax
  62. ret
  63. codesg ends
  64. end begin
复制代码
未命名.jpg
谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-11-22 21:22:57 | 显示全部楼层
有图片显示了哈哈!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-11-23 12:54:01 | 显示全部楼层
要是什么都没提示 是不是名字错了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:22:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:32:16 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:35:54 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:38:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:42:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2012-11-24 16:47:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-8-29 10:32:17 | 显示全部楼层
帮顶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-29 01:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表