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

来源:互联网 发布:python 多行命令 编辑:程序博客网 时间:2024/05/21 17:41

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


要求:编写程序统计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 软件来观察。


0 0