汇编总是提醒:error a2008::in instruction

学习 时间:2026-03-30 09:15:27 阅读:3716
汇编总是提醒:error a2008::in instructionassume cs:code,ds:data,ss:stackdata segment db 'welcome to masm!'db02h,24h,71hdata endsstack segment dw 8 dup(0)stack endscode segment start:mov ax,datamov ds,axmov ax,stackmov ss,axmov sp,10hxor bx,bxmov ax,0b872hmov cx,3s3:push cxpush axpush bxmov es,axmov si,0mov di,0mov cx,10hs1:mov al,ds:[si]mov es:[di],alinc siadd di,2loop s1mov di,1pop bxmov al,ds:10h[bx]inc bxmov cx,10hs2:mov es:[di],aladd di,2loop s2pop axadd ax,0ahpop cxloop s3mov 4c00hint 21hcode endsend start

最佳回答

怕黑的爆米花

难过的心情

2026-03-30 09:15:27

两处错误已经消除,正确程序如下:assume cs:code,ds:data,ss:stackdata segment db 'welcome to masm!' db 02h,24h,71hdata endsstack segment dw 8 dup(0)stack endscode segment start:mov ax,data mov ds,ax mov ax,stack mov ss,ax mov sp,10h xor bx,bx mov ax,0b872h mov cx,3 s3:push cx push ax push bx mov es,ax mov si,0 mov di,0 mov cx,10h s1:mov al,ds:[si] mov es:[di],al inc si add di,2 loop s1 mov di,1 pop bx mov al,ds:10h[bx] inc bx mov cx,10h s2:mov es:[di],al add di,2 loop s2 pop ax add ax,0ah pop cx loop s3 mov ax, 4c00h int 21hcode endsend start 本程序,显示三行彩色文字。 再问: 我只找到了mov ax,4c00h这个错误,请问还有一个错误在什么地方呢? 再答: data segment db 'welcome to masm!' db02h,24h,71h   ;DB 和 20H,之间,应该有空格。 data ends再问: 哦哦,那个是拷贝的时候弄错的,可是程序运行不起来呀,就闪烁了一下什么都没有了,程序应该没有问题的呀? 再答: 就闪烁了一下什么都没有了,。。。 ---- 呵呵,你是用鼠标操作的吧? 别用鼠标,用键盘操作,试试看吧。再问: 是用键盘的呀,用的cmd的DOS窗口呀,它闪烁了一下,汉字都变成了问号,然后。。。什么都没有了。。。 再答: 是应该用的cmd的DOS窗口。那会有汉字?我的程序名为 M2。EXE,执行后,画面如下:再问: 同样的程序,我的为mm。exe,执行前窗口为:执行后变成:中间闪烁了一下,难道因为我的是win7的系统吗? 再答: 看起来,应该是WIN7的原因。我的手头的几台机器,装的都是XP,运行本程序时,都是好用的。

最新回答共有2条回答

  • 阳光的小土豆
    回复
    2026-03-30 09:15:27

    两处错误已经消除,正确程序如下:assume cs:code,ds:data,ss:stackdata segment db 'welcome to masm!' db 02h,24h,71hdata endsstack segment dw 8 dup(0)stack endscode segment start:mov ax,data mov ds,ax mov ax,stack mov ss,ax mov sp,10h xor bx,bx mov ax,0b872h mov cx,3 s3:push cx push ax push bx mov es,ax mov si,0 mov di,0 mov cx,10h s1:mov al,ds:[si] mov es:[di],al inc si add di,2 loop s1 mov di,1 pop bx mov al,ds:10h[bx] inc bx mov cx,10h s2:mov es:[di],al add di,2 loop s2 pop ax add ax,0ah pop cx loop s3 mov ax, 4c00h int 21hcode endsend start 本程序,显示三行彩色文字。 再问: 我只找到了mov ax,4c00h这个错误,请问还有一个错误在什么地方呢? 再答: data segment db 'welcome to masm!' db02h,24h,71h   ;DB 和 20H,之间,应该有空格。 data ends再问: 哦哦,那个是拷贝的时候弄错的,可是程序运行不起来呀,就闪烁了一下什么都没有了,程序应该没有问题的呀? 再答: 就闪烁了一下什么都没有了,。。。 ---- 呵呵,你是用鼠标操作的吧? 别用鼠标,用键盘操作,试试看吧。再问: 是用键盘的呀,用的cmd的DOS窗口呀,它闪烁了一下,汉字都变成了问号,然后。。。什么都没有了。。。 再答: 是应该用的cmd的DOS窗口。那会有汉字?我的程序名为 M2。EXE,执行后,画面如下:再问: 同样的程序,我的为mm。exe,执行前窗口为:执行后变成:中间闪烁了一下,难道因为我的是win7的系统吗? 再答: 看起来,应该是WIN7的原因。我的手头的几台机器,装的都是XP,运行本程序时,都是好用的。

上一篇 我想买道德经,听说道德经很值得去看,但我搜索到很多个版,听说有些是胡扯的我只想知道它的意思,并不想深入去参透它.

下一篇 巴金的《星》的阅读答案