主题:汇编程序求助
mooncarp
[专家分:0] 发布于 2005-05-15 10:37:00
刚学汇编,还不太懂,希望指点,3Q
1.数据区BUF存储有若干带符号字节数据。编写程序,计算前N个数据之和,并存放到字单元SUM中。
2.编写程序,统计从键盘输入一串字符中出数字字符的个数、字母字符的个数及非数字/字母字符的个数,统计结果存放在内存中。当输入字符为'$'时,停止输入。
回复列表 (共9个回复)
沙发
clever101 [专家分:1310] 发布于 2005-05-15 12:29:00
你叫我们帮你做作业阿?把你的思考写出来以及在思考过程中遇到什么问题,要具体一点,我可不想帮助懒汉。
板凳
mooncarp [专家分:0] 发布于 2005-05-15 15:42:00
真的不会做啊,听课都听晕了[em7]
3 楼
gunxue [专家分:1050] 发布于 2005-05-15 17:42:00
第一题:
.model small
.data
buff db 1,2,3,4,5,6,7,8,9,10
bufflen equ $-buff
sum dw 0
.code
mov ax,@data
mov ds,ax
mov cx,bufflen
xor dx,dx
xor ah,ah
lea si,buff
sum_lop:
lodsb
add dx,ax
loop sum_lop
mov sum,dx
mov ah,4ch
int 21h
end
4 楼
gunxue [专家分:1050] 发布于 2005-05-15 18:01:00
第二题,写的时候忘了你用$结束的条件,这个程序用回车结束即可更付合大家习惯。
.model small
.data
buff db 40h,0,40h dup (0)
num dw 0
char dw 0
other dw 0
.code
mov ax,@data
mov ds,ax
lea dx,buff
mov ah,0ah
int 21h
mov si,offset buff
inc si
mov cl,[si]
xor ch,ch
inc si
cout_lop:
lodsb
cmp al,'0'
jl char_Upper_YN
cmp al,'9'
jg char_Upper_YN
add [num],1
loop cout_lop
jmp exit
char_Upper_YN:
cmp al,'A'
jl char_Lower_YN
cmp al,'Z'
jg char_Lower_YN
add [char],1
loop cout_lop
jmp exit
char_Lower_YN:
cmp al,'a'
jl char_other
cmp al,'z'
jg char_other
add [char],1
loop cout_lop
jmp exit
char_other:
add [other],1
loop cout_lop
exit:
mov ah,4ch
int 21h
end
5 楼
gunxue [专家分:1050] 发布于 2005-05-15 18:02:00
给我加分哦。.....
6 楼
mooncarp [专家分:0] 发布于 2005-05-18 10:31:00
3Q~[em2]
7 楼
gunxue [专家分:1050] 发布于 2005-05-18 19:24:00
3q也不帮我加分啊,55555555555,我都这么尽力了.
8 楼
mooncarp [专家分:0] 发布于 2005-05-23 08:01:00
呵呵,加了
9 楼
kangzai228 [专家分:0] 发布于 2007-06-27 19:15:00
呵呵 看不懂
我来回复