一个有错的程序,请帮忙看看!

zwzzj 2004-11-22 09:44:16
题目:
试编写一程序,要求在长度为100H的字节的数组中,找出大于42H的无符号的个数并存入字节单元UP中,找出小于42H的无符号数存入DOWN中。
以下是我写的,有错,不知道错在哪里,请各位指教:
date segment
string db 100 dup(?)
date ends

fujia segment
up db 100 dup(?)
down db 100 dup(?)
fujia ends

seg segment stack
sss db 100 dup(?)
seg ends

code segment
assume ds:date,ss:seg,cs:code,es:fujia
start:
mov ax,date
mov ds,ax
mov ax,fujia
mov es,ax
mov ax,seg
mov ss,seg
mov sp,size sss
;********************************
mov si,size string
mov bx,size up
mov dx,size down
mov cx,100
mov ax,42
;*********************************
loop1:
cmp ax,[si]
js uper
mov [dx],[si]
inc dx
inc si
jmp s
uper:
mov [bx],[si]
inc bx
inc si


s:
loop loop1
mov ax,4c00
int 21
code ends
end start







...全文
86 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zwzzj 2004-11-24
  • 打赏
  • 举报
回复
我发现的错误:
本来该是字节操作,我用的却是字操作.
whour 2004-11-22
  • 打赏
  • 举报
回复
大致错误如下:
____________________________________________________________
1、mov ax,42 ==> mov ax, 42H
2、指令中不能同时含有两个存储器操作数
3、既然bx、dx是引用附加段,就应该加上es:[dx]或者es:[bx]
____________________________________________________________
iamroc 2004-11-22
  • 打赏
  • 举报
回复
汇编里有SIZE这个指令吗?应该是SIZEOF吧

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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