0

我想编写一个程序,使用 scasb 和 masm32 计算字符串中特定符号的数量,我找到了示例,但我不知道为什么会出错。这是代码的一部分:

.data
str  db '. . .'

len_str=$-str

.code                     

start:                      

  mov  ax,@data
  mov  ds,ax
  mov  es,ax
  lea  di,str
  mov  cx, len_str  
  mov  al,' '
  mov  bx,0 
  cld

cycl:
repe scasb
  jcxz exit 
  inc  bx
  jmp  cycl

exit:  

得到

A2008 语法错误 db, str

A2006 语法错误 len_str

A2148 表达式中的符号类型无效:退出

A2004:符号类型冲突

4

1 回答 1

2

str是一条指令,它是 的助记符Store Task Register。您不能像尝试那样将其用作标签名称。将其命名为其他名称,这应该可以解决您的错误

于 2012-11-21T00:21:30.677 回答