嵌汇编的问题?

wwwaj 2000-05-26 10:05:00
请看如下程序:
void ReadMemory ( WORD sel, DWORD dwOffset,char * str, UINT length )
{
char cRead;
for ( UINT i = 0; i < length; i ++ )
{
_asm
{
    push es
    mov ax, sel
    mov es, ax
    mov ebx, dwOffset
    mov al, byte ptr es:[ebx]
    mov cRead, al
    inc dwOffset
    pop es
}
  str [i] = cRead;
}
}
编译总报 unknown character '0xa1' 错。不知是何因?
...全文
267 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyqryq 2001-01-31
  • 打赏
  • 举报
回复
有非法字符!
zhangwenchao 2001-01-30
  • 打赏
  • 举报
回复
把_asm前面的_去掉,或者这样:asm mov yy,xx asm yy,xx
Black_Knight 2000-09-25
  • 打赏
  • 举报
回复
应该是有关中文输入法没有切换回去才出现的,我就经常遇到,应该很好搞定才对呀?
maptrix 2000-09-25
  • 打赏
  • 举报
回复
喂兄弟,我把程序考下来,调试了一下,有点怀疑你是不是故意考我们的吧?

softdoctor说的完全正确,你就快把分送人算了,这样会无端端耗费很多人的精力的。
tulip 2000-09-23
  • 打赏
  • 举报
回复
I suspected you should input "al"register.but not input "a1"digital.so, MASM will error.if you don't believe ,all "al" is be writen "AL",then ,you try again,because "al" is a kind varible of register,not digital.
SCUM 2000-09-23
  • 打赏
  • 举报
回复
to tulip: where is 'a1' your found?
but I'm agree your standpoint! I am thinks so. may be it is in his source code.
Kenny 2000-05-26
  • 打赏
  • 举报
回复
看看你的逗号吧,你贴在上面的逗号是全角的。
xubin_sh 2000-05-26
  • 打赏
  • 举报
回复
擦掉重写一便!
softdoctor 2000-05-26
  • 打赏
  • 举报
回复
你这段代码里每一行都存在一个异常字符0xa1
该字符是不可显示的。

将该段每行前边全部空余部分删去再重新对齐就行了
x86 2000-05-26
  • 打赏
  • 举报
回复
报告哪一行错吗?
0xa1可能是中文字符的一部分,给的代码全吗?
也许不是这一段的错
halfdream 2000-05-26
  • 打赏
  • 举报
回复
多半你是输入了全角的空白符吧?

69,336

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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