. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->第一个程序
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  第4章实验3的问题  [待解决] 回复[ 5次 ]   点击[ 493次 ]  
512134
[帖 主]   [ 发表时间:2009-02-18 03:17 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-02-10 01:48
本人把源文件放在F盘的A文件夹里,文件名为t1.asm
用masm5编译时结果出现
Microsoft (R) Macro Assembler Version 5.00
Copyright (C) Microsoft Corp 1981-1985, 1987.  All rig

Source filename [.ASM]: f:\a\t1
Object filename [t1.OBJ]: f:\a\
Source listing  [NUL.LST]:
Cross-reference [NUL.CRF]:
f:\a\t1.ASM(13): error A2107: Non-digit in number

  50942 + 450258 Bytes symbol space free

      0 Warning Errors
      1 Severe  Errors

发现错误了,
可是我都是照书上的写的呀
assume cs:codesg
codesg segment
mov ax,2000
mov ss,ax
mov sp,0
add sp,10
pop ax
pop bx
push ax
push bx
pop ax
pop bx
mov ax,4c00
int 21
codesg ends
end
512134
[第1楼]   [ 回复时间:2009-02-18 03:18 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-02-10 01:48
大家帮帮忙看看,错在哪里?
谢谢大家了~~~~~~~~~~~~~~~~
mess
[第2楼]   [ 回复时间:2009-02-18 11:58 ]   [引用]   [回复]   [ top ] 
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48
f:\a\t1.ASM(13): error A2107: Non-digit in number 
---------------
要学会看编译错误,这是你程序用masm.exe编译提示的编译错误,提示在13行有错误,原因是后面的信息,可以简单翻译一下结合实际语句很容易找出错误来。

找到相应的行数,这里的指令是:mov ax,4c00 
---------------------
这里少了H了,所以当计算机把4c00当作十进制数的时候会报错Non-digit,即不是数字。

debug下默认十六进制
.asm下默认十进制
iomu
[第3楼]   [ 回复时间:2009-02-22 22:41 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 21:37
assume cs:codesg 
codesg segment 
mov ax,2000 
mov ss,ax 
mov sp,0 


楼上的朋友,我也看到这跟楼主出了同样的问题

如果是10进制的话,那mov ax,2000这个也没带H...又是为什么呢?
iomu
[第4楼]   [ 回复时间:2009-02-22 22:46 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 21:37
了解了。.....完全是自己的问题
hawk
[第5楼]   [ 回复时间:2009-03-16 20:56 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-03-16 13:06
如果是10进制的话,那mov ax,2000这个也没带H...又是为什么呢?
回复:mov ax,2000 这里确是是一个数.但他是十进制的,编译过程不会出错,但在debug下调试会变成
mov ax,07d0H (十六进制)因为2000(十进制)=7d0H(十六进制)
而mov ax,4c00 ,很明显,十进制数中是没有4c00的,所以asm报错,因为他不是数
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved