汇编语言程序设计:[4]数字平台长度

 时间:2026-02-13 15:03:37

1、打开masm汇编编译程序,新建一个masm源文件脚本。

DATAS SEGMENT

    ;此处输入数据段代码  

DATAS ENDS

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:

    MOV AX,DATAS

    MOV DS,AX

    ;此处输入代码段代码

    MOV AH,4CH

    INT 21H

CODES ENDS

    END START

汇编语言程序设计:[4]数字平台长度

汇编语言程序设计:[4]数字平台长度

2、在正文中输入我们的程序代码,并将文件命名为jisuan.asm

data segment

obf  db  '***** xiaobo welcome you !***** Designed by 1wangxiaobo@163.com',0dh,0ah 

     db             ' input data:','$'

a0   db ?

a1   db ?

b0   db ?

b1   db ?

a    db ?

b    db ?

data ends

stack segment stack

      db 200 dup(0)

      stack ends

code  segment

      assume cs:code, ds:data,ss:stack

main:mov ax, data

     mov ds, ax

     mov ah, 9

     lea dx, [obf]

     int 21h

     inc dx

     mov dl, 13

     mov ah, 2

     int 21h

     mov dl,10

     int 21h

     mov ah,1

     int 21h

     cmp al, 13

     jz lab1

     mov [a0], al

     mov [a], al

     mov [a1], 1

x1:  mov ah, 1

     int 21h

     cmp al, 13

     jz lab1

     mov [b], al

     mov bl, [b]

     cmp bl, [a]

     jnz x2

     add [a1], 1

     jmp x1

x2:  mov [b0], bl

     mov [b1], 1

x3:  mov ah, 1   

     int 21h

     mov [a], al

     cmp bl,[a]

     jnz x4

     add [b1],1

     jmp x3

x4:  mov cl, [b1]

     cmp cl, [a1]

     jb  y1

     mov cl, [b0]

     mov [a0], cl

     mov cl, [b1]

     mov [a1],cl

 y1: cmp al, 13

     jz  lab1

     mov [b0], al

     mov [b1], 1

     mov [b], al

     mov bl, [b]

     jmp x3

lab1: mov ah, 2

      mov dl,13

      int 21h

      mov dl,10

      int 21h

      cmp [a1],10

      jb  z1

      mov ah,0

      mov al, [a1]

      mov bl, 10

      div bl

      add ax, 3030h

      mov bx, ax

      mov ah, 2

      mov dl, bl

      int 21h

      mov dl, bh

      int 21h

      jmp z2

z1: add [a1], 30h

    mov dl, [a1]

    int 21h

    sub [a1],30h

z2: mov ah,2

    mov dl, 13

    int 21h

    mov dl, 10

    int 21h

    mov cx, 0

    mov cl, [a1]

    mov ah, 2

m:  mov dl,[a0]

    int 21h

    loop m

    mov ah, 4ch

    int 21h

code ends

     end main

汇编语言程序设计:[4]数字平台长度

3、运行我们编辑的文件,计算数字平台长度的程序,如:

运行时输入:

111122333,结果为:

                 4

         1111

***** xiaobo welcome you !***** Designed by 1wangxiaobo@163.com

 input data:

111122333

4

1111

Press any key to continue

汇编语言程序设计:[4]数字平台长度

汇编语言程序设计:[4]数字平台长度

汇编语言程序设计:[4]数字平台长度

  • python编程:使用方法修改字符串的大小写
  • android studio使用lombok后 报错问题解决办法
  • php函数里面如何实现两个以上的返回值
  • 如何用c编写快速关机程序
  • 如何在mfc制作的聊天程序下实现发送图片
  • 热门搜索
    弱阳性是什么意思 验车需要带什么 成龙姓什么 睿智是什么意思 猫砂是什么 金人是什么民族 cfr是什么意思 giao是什么意思 s标志是什么车 24岁属什么