首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

帮忙看看这段汇编代码。老编译不过去。愁四,该怎么解决

2012-03-31 
帮忙看看这段汇编代码。。老编译不过去。。愁四代码;这个很郁闷。。不知道哪错了assume cs:codea segmentdb 1,2,

帮忙看看这段汇编代码。。老编译不过去。。愁四
代码; 这个很郁闷。。不知道哪错了 
assume cs:code 

a segment 
  db 1,2,3,4,5,6,7,8 
a ends 
b segment 
  db 1,2,3,4,5,6,7,8 
b ends 
c segment 
  db 0,0,0,0,0,0,0,0 
c ends 
code segment 
start:mov ax,a 
  mov ds,ax 
  mov ax,b 
  mov es,ax 
  mov ax,c 
  mov ss,ax 
  mov cx,8 
  mov bx,0 
  s:mov al,[bx] 
  add al,es:[bx] 
  mov ss:[bx],al 
  inc bx 
  loop s 
  mov 4c00h 
  int 21h 
code ends 
end start 

编译提示; 

Microsoft (R) Macro Assembler Version 5.00 
Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved. 

l:\4.txt(26): error A2056: Immediate mode illegal 

  50584 + 414504 Bytes symbol space free 

  0 Warning Errors 
  1 Severe Errors 

C:\DOCUME~1\ADMINI~1>

[解决办法]
c在asm中是key word,所以要改名!!!,另外你mov 4c00h一句没写全:
mov ax,4c00h

Assembly code
assume cs:codea segment  db 1,2,3,4,5,6,7,8a endsb segment  db 1,2,3,4,5,6,7,8b endsc00 segment  db 0,0,0,0,0,0,0,0c00 endscode segmentstart:mov ax,a  mov ds,ax     mov ax,b  mov es,ax     mov ax,c00  mov ss,ax     mov ax,0  mov bx,0  mov cx,8  s:mov al,ds:[bx]  add al,es:[bx]  mov ss:[bx],al  inc bx  loop s     mov ax,4c00h  int 21hcode endsend start 

热点排行