当前位置: 代码迷 >> 汇编语言 >> 初学者求教一个简单的有关问题
  详细解决方案

初学者求教一个简单的有关问题

热度:1129   发布时间:2013-02-26 00:00:00.0
菜鸟求教一个简单的问题
(1)、定义八个元素数组
(2)、统计数组中第一个元素的1的个数,并将其存放到变量num中
(3)、将数组排序
(4)、将排序后的最后一个元素以十六进制输出屏幕

求代码。刚刚学,真的不知道该怎么入手。谢谢了

急急急急

------解决方案--------------------------------------------------------
Assembly code
assume    cs:code,ds:datadata    segmentarray    db    15,65,1,2,3,6,9,10 num    db    0                  data    ends;code    segmentstart:    mov ax,data                    mov ds,ax;统计0号元素1的个数    mov si,offset array            mov cx,8                      mov al,[si]                x:    rol al,1                       jc x1                          jmp jx1                    x1:    inc numjx1:    loop x;将数组排序。(有好的,暂时没想出来)    mov cx,7        mov si,offset arrayy:        push cx    mov di,si    inc diy1:    mov al,[si]    cmp al,[di]    jb jx2    xchg al,[di]    mov [si],aljx2:    inc di    loop y1    inc si    pop cx    loop y;以十六进制显示数组最后元素的值    mov dx,0    mov dl,[si]    mov cx,2z:    push cx    mov cl,4    rol dl,cl    push dx    and dx,0fh    cmp dl,0ah    jb z1    add dl,37h    mov ah,2    int 21h    jmp z2z1:    add dl,30h    mov ah,2    int 21hz2:    pop dx    pop cx    loop z;    mov ah,4ch    int 21hcode    endsend    start
------解决方案--------------------------------------------------------
分而治之,化繁为简。
  相关解决方案