| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1128 人关注过本帖
标题:求助!用循环结构编程
只看楼主 加入收藏
zhangyi_1989
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-11-15
收藏
 问题点数:0 回复次数:5 
求助!用循环结构编程
要求:
     把C语言的语句改写成功能相同的汇编语言程序(其中的变量全部为整型),以十进制字符串的形式输出运算结果。
                         for(i=1,j=0;i<100;i++)
                          if(i%2==0)j+=i;
搜索更多相关主题的帖子: 结构 
2007-12-09 19:59
lihy114
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-15
收藏
得分:0 
可以通过判断最后一位是0还是1来判断是不是偶数吧

俺妈跟俺说:低调!!!!
2007-12-09 20:08
lihy114
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-15
收藏
得分:0 
可以 这样 来求解吧
  mov jiashu,1
  mov ax,0
    mov cx,49                                                //设置循环的次数
AGAIN:mov bl,jiashu
    and bl,01h                                               //判断是奇数还是偶数
    inc jiashu
    jnz AGAIN                                                 //奇数加一
    dec jiashu                                               //偶数求和
    add al,jiashu
    adc ah,0                                                   //加进位
    inc jiashu   
    loop AGAIN

但是不知道为什么结果不对

俺妈跟俺说:低调!!!!
2007-12-10 10:15
mouse_china
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-11-8
收藏
得分:0 
for(i=1,j=0;i<100;i++)
                          if(i%2==0)j+=i;
-----------

一个显示十进制的子函数
一个程序出题
 循环 loop jcxz等
 if  cmp jz等等都可以
2007-12-10 19:05
zhulei1978
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:53
帖 子:1351
专家分:1200
注 册:2006-12-17
收藏
得分:0 
data segment
  result dw 0
data ends
code segment
main proc far
  assume cs:code,ds:data
start:
  push ds
  sub ax,ax
  push ax
  mov ax,data
  mov ds,ax
  mov al,1
again:
  cmp al,100
  je again3
  mov ah,al
  and ah,1
  jz again1
  inc al
  jmp again
again1:
  mov cx,result
  mov ah,0
  add cx,ax
  mov result,cx
  inc al
  jmp again
again3:
  mov ax,result
  mov bx,10
  push bx   
loop1:
  cmp ax,0
  jz loop2
  sub dx,dx
  div bx   
  add dl,30h
  push dx   
  jmp loop1
loop2:
  pop dx   
  cmp dl,10
  je loop3
  mov ah,2
  int 21h
  jmp loop2
loop3:
  ret
main endp
code ends
end start

[[italic] 本帖最后由 zhulei1978 于 2007-12-10 20:17 编辑 [/italic]]
2007-12-10 20:16
lihy114
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-15
收藏
得分:0 
DATAS SEGMENT
    sum db 5 dup(0)
    jiashu db 0
    chushu dw 10
DATAS ENDS
STACKS SEGMENT
   db 20 dup(0)
STACKS ENDS
CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    mov ax,0
    mov cx,49
AGAIN:inc jiashu
    mov bl,jiashu
    and bl,01h
    jnz AGAIN
    add al,jiashu
    adc ah,0
    loop AGAIN
    mov cx,4
    mov si,3
aga:cwd
    div chushu
    add dl,30h
    mov sum[si],dl
    dec si
    loop aga
    mov sum[4],'$'
    mov dx,offset sum
    mov ah,9
    int 21h
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

俺妈跟俺说:低调!!!!
2007-12-11 08:32
快速回复:求助!用循环结构编程
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014669 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved