80x86 汇编语言编程:统计数组每个元素中 1 的个数

目的:掌握具有多重循环结构和分支结构的汇编程序的编写


要求:编写程序统计arry1数值的各字节数据中含“1”数据位的个数,并将统计结果保存在res1数组对应元素中。


数据段的代码已经给定了,如下:


data segment

    arry1  db 34h, 37h, 6eh, 0c2h, 55h, 16h, 9fh

    len  equ  $ - arry1

    res1  db len dup(0)

data ends


做而论道编写的程序如下:


ASSUME   CS:CODESG, DS:DATA


DATA  SEGMENT

    ARRY1  DB  34H, 37H, 6EH, 0C2H, 55H, 16H, 9FH

    LEN  EQU  $ - ARRY1

    RES1  DB  LEN DUP(0)

DATA  ENDS


CODESG  SEGMENT

START:

    MOV   AX, DATA

    MOV   DS, AX

    MOV   SI, 0

;==========================外层循环

    MOV   CX, LEN

LP1:

    MOV   AL, ARRY1[SI]

    PUSH  CX

;----------------------内层循环

    MOV   CX, 8

LP2:

    ADD   AL, AL

    JNC   N1          ;分支

    INC   BYTE PTR RES1[SI]

N1:

    LOOP  LP2

;----------------------

    POP   CX

    INC   SI

    LOOP  LP1

;==========================

    MOV   AX, 4C00H

    INT   21H

CODESG  ENDS

    END   START


提问者评价:谢谢!


题目链接:http://zhidao.baidu.com/question/936264253318438492.html


题目没有输出的要求,故此,本程序也没有编写输出的程序。


要想看结果,需要使用 DEBUG 软件来观察。


发布了532 篇原创文章 · 获赞 357 · 访问量 129万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览