鱼C论坛

 找回密码
 立即注册
查看: 1718|回复: 9

输出保存好的数据

[复制链接]
发表于 2014-5-11 17:51:58 | 显示全部楼层 |阅读模式
10鱼币
代码如下,希望实现输出定义在a中的字符串,分成2行输出第一行gg 123,第二行kk 456。但好像全是错误,求大神指正。
assume cs:code,ds:data
data segment
a db 'gg 123$kk 456$';定义数据
data ends
code segment
mov ax,data   
mov ds,ax
mov si,0
mov cx,2
s:mov ds,offset a[si] :9号功能显示
add si,7
mov ah,9
int 21h
mov dl,0ah   ;换行
mov ah,2
int 21h
mov dl,0dh
mov ah,2
int 21h
loop s
code ends
end


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-11 17:51:59 | 显示全部楼层
N1)0_((4SBUQ3T49ZLP5AR1.jpg
  1. assume cs:code,ds:data
  2. data segment
  3. a db 'gg 123$kk 456


  4. ;定义数据
  5. data ends


  6. code segment
  7. start:
  8.         mov ax,data   
  9.         mov ds,ax
  10.        
  11.         mov cx,2
  12.         mov bx,0
  13.        
  14.         ;第一行
  15.         s: mov dx,offset a
  16.         add dx,bx
  17.         mov ah,9
  18.         int 21h
  19.        
  20.         ;换行
  21.         mov ah,02h
  22.     mov dl,0ah
  23.     int 21h

  24.         ;定位到一个单词
  25.         add bx,7

  26.         loop s
  27.        
  28.         mov ax,4c00h
  29.         int 21h
  30. code ends
  31. end start
复制代码



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-11 19:36:39 | 显示全部楼层
支持楼上的回答!我想你的问题应该解决了吧!:lol:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-5-11 23:20:46 From FishC Mobile | 显示全部楼层
xiaosawanjava 发表于 2014-5-11 18:51

谢谢你的解答,还有一些问题。
Add ds,bx加的是什么?偏移地址不是要加si吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-5-11 23:26:08 From FishC Mobile | 显示全部楼层
xiaosawanjava 发表于 2014-5-11 18:51

谢谢你的解答,还有一些问题。
add ds,bx加的是什么?偏移地址不是要加si吗?直接加7能指向7个字节之后吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-5-12 09:29:38 From FishC Mobile | 显示全部楼层
青玄 发表于 2014-5-11 19:36
支持楼上的回答!我想你的问题应该解决了吧!

大神,也请教你一个问题。我这个定义的a的空间是多大?还能往a里面插入第三组数据吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-12 09:39:55 | 显示全部楼层

你的空间的大小应该是12个字节的大小,可以往a里面插入第三组数据,不过代码也要相应的修改一下就行了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-5-12 10:20:42 From FishC Mobile | 显示全部楼层
青玄 发表于 2014-5-12 09:39
你的空间的大小应该是12个字节的大小,可以往a里面插入第三组数据,不过代码也要相应的修改一下就行了!

只是添加插入的代码,不用修改定义吗?如果我定义的这个字符串的空间只有12个字节大小,那就应该没有空间插入第三组数据啊。求修改定义。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-12 10:33:08 | 显示全部楼层
四象轮回 发表于 2014-5-12 10:20
只是添加插入的代码,不用修改定义吗?如果我定义的这个字符串的空间只有12个字节大小,那就应该没有空间 ...

恩恩,如果你想在a里面加入数据的话,那么就直接加是可以的,不过在代码索引的时候,要注意一下,如果想再开辟空间用代码插入的话,那也是可以的!比如开辟一个里面有数据的b,把b的数据放到a里面就实现了一个插入的操作!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-5-12 11:22:38 From FishC Mobile | 显示全部楼层
青玄 发表于 2014-5-12 10:33
恩恩,如果你想在a里面加入数据的话,那么就直接加是可以的,不过在代码索引的时候,要注意一下,如果想再 ...

我再回去试一下,谢谢你!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-8 19:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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