鱼C论坛

 找回密码
 立即注册
查看: 3504|回复: 1

[汇编作业] 汇编语言-实验11-代码分享

[复制链接]
发表于 2016-8-6 17:27:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
在编写的时候出现以下调试错误:
1、字符串中的单引号',造成编译错误,提前结束了字符串的定义
2、要用字节型比较,al,非ax
  1. assume cs:code

  2. data segment
  3. db 'Beginner',39,'s All-purpose Symbolic Instruction Code.',0                       
  4. data ends

  5. stack segment
  6. dw 16 dup(0)                        ;32B
  7. stack ends

  8. code segment
  9. start:
  10.         mov ax,stack
  11.         mov ss,ax
  12.         mov sp,32

  13.         mov ax,data
  14.         mov ds,ax               
  15.         mov si,0
  16.        
  17.         call letterc

  18.         mov ax,4c00h
  19.         int 21h

  20. ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  21. letterc:
  22.         ;参数:ds=要转换的字符串段地址,si=要转换的字符串的起始地址,字符串要以0结束
  23.         ;返回值:将字符串转换为全大写,遇0结束转换

  24.         ;此程序要求栈段的长度为32B

  25.         push ds
  26.         push si
  27.         push ax

  28. lt_chge:       
  29.         mov al,ds:[si]
  30.         cmp al,0
  31.         je lt_ok

  32.         cmp al,61h
  33.         jb lt_s
  34.         cmp al,7ah
  35.         ja lt_s
  36.         sub al,20h
  37.         mov byte ptr ds:[si],al
  38. lt_s:        inc si
  39.         jmp lt_chge

  40. lt_ok:
  41.         pop ax
  42.         pop si
  43.         pop ds
  44.         ret
  45.        
  46. code ends
  47. end start
复制代码

评分

参与人数 1鱼币 +5 收起 理由
康小泡 + 5 热爱鱼C^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-8-7 14:55:25 | 显示全部楼层
看看看~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-12 18:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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