编译时out of memory的问题!

PasserbyX 2005-11-19 08:43:24
定义了如下数据段:
data segment ;定义数据段
namepara label byte
maxlen1 db 21
namelen db ?
namefld db 21 dup(?) ;定义姓名缓存区

phonepara label byte
maxlen2 db 8
phonelen db ?
phonefld db 8 dup(?) ;定义电话号码缓存区

endaddr dw ? ;名字的首地址
namectr dw 0 ;计数器(存入名字的个数)
nametab db 50 dup(27 dup(' ')) ;能存入的名字的总数是50
namesav db 27 dup(?),13,10,'$' ;名字加电话共27位(20+7)
swapped db 0 ;标志位

message0 db 'How many names do you want to enter?',13,10,'$'
;需要输入姓名电话的个数
message1 db 'Warning:The number of your enter exceed the limit of 50! Plesae input the number again!',13,10,'$'
;警告:输入数量高于50
message2 db 'Warning:The number of your enter is not allowed! Please intput the number again!',13,10,'$'
;警告:输入的数量不符合要求(应为两位十进位制数)
message3 db 'Input name:','$'
;要求输入姓名
message4 db 'Warning:Input error!,please input a name!',13,10,'$'
;警告:没有输入名字
message5 db 'Input a telephone number:','$'
;要求输入电话号码
message6 db 'Do you want a telephone number?(Y/N)','$'
;询问是否要输出电话号码
message7 db 'name?',13,10,'$'
;输入要查询的姓名
message8 db 'name tel.',13,10,'$'
;输出姓名和电话
message9 db 'No match!',13,10,'$'
;没有找到要查找的电话
message10 db 'The result of sort is as follows:',13,10,'$'
;按升序排列姓名、电话
data ends

结果用MASM5编译时显示在endaddr dw ? 这一行Out of Memory.问题在哪?诸位高手请指教!
...全文
235 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
VxD1 2005-11-21
  • 打赏
  • 举报
回复
不会吧,这些数据总合达不到一个段的最大容量啊,你更改一下定义存储模型的指令
ihsgnep 2005-11-20
  • 打赏
  • 举报
回复
当然 注释里面的 不需要改
ihsgnep 2005-11-20
  • 打赏
  • 举报
回复
符号 不能 是 中文状态下的 啊
把里面 的 ; : ? 等等 全部改成 英文状态下的
大熊猫侯佩 2005-11-19
  • 打赏
  • 举报
回复
我用 masm611 编译无问题。除了把 ;改成 ;

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧