作业帮 > 综合 > 作业

统计正负数的个数.下面是我的代码、请高手指点.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/25 03:43:52
统计正负数的个数.下面是我的代码、请高手指点.
data segment
dat db 0ffh,54h,8ah,42h,62h,oc6h
count equ $-dat
t1 db 0;存负数个数
t0 db 0;存正数个数
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
xor ax,ax
xor cx,cx
lea si,dat
mov cl,count
mov si,0
lop:
text byte ptr [si],80h
jz plus
inc al
jump next
plus:
inc ah
next:
inc si
dec cl
jne lop
mov t1,al
mov t0,ah
mov ah,4ch
int 21h
coseg ends
end start
程序算法是正确的,有五处语法错误:
data segment
dat db 0ffh,54h,8ah,42h,62h,oc6h ;这里应该是数字0c6h,你写成了字母o
count equ $-dat
t1 db 0;存负数个数
t0 db 0;存正数个数——这里注释那个分号,成了中文标点
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
xor ax,ax
xor cx,cx
lea si,dat
mov cl,count
mov si,0
lop:
text byte ptr [si],80h;——这里是test
jz plus
inc al
jump next ;——这里是jmp不是jump
plus:
inc ah
next:
inc si
dec cl
jne lop
mov t1,al
mov t0,ah
mov ah,4ch
int 21h
coseg ends ;——这里应该是code ends
end start