qq_44357739 2019-01-01 18:16 采纳率: 0%
浏览 1327

从键盘输入一字符串,统计并显示该字符串的长度

求汇编程序和仿真图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-01-01 12:17
    关注
    DATA    SEGMENT  
            DISPIN    DB  'The input string is: ', '$'
            DISPOUT   DB 'The length is:', '$'
            DISPX   DB 0DH, 0AH, 'Error: the string is too long!',0DH,0AH,'$'
            BLK   DB 0DH, 0AH,0DH, 0AH,'$'
    DATA    ENDS
    
    CODE    SEGMENT
            ASSUME CS:CODE, DS:DATA
    
    START:  MOV AX, DATA
            MOV DS, AX
            MOV CX,00H
            LEA DX,DISPIN   ;MOV DX, OFFSET DISP1
            MOV AH, 09H
            INT 21H
    
    INPUT:  MOV AH, 01H
            INT 21H  
            CMP AL,0DH
            JE  DISP
            INC CX
            JMP INPUT
    
    ;..........输出显示部分........
    DISP:   CMP CX,100H
            JB  NEXT1
            LEA DX, DISPX
            MOV AH,09H
            INT 21H
    NEXT1:  MOV DX, OFFSET DISPOUT
            MOV AH, 09H
            INT 21H 
            MOV DL,CL
            MOV DH,CL           
            MOV CL,4
            SHR DL,CL
    ;***        
            CMP DL,9H
            JBE  LP
            ADD DL,7H
    LP:     ADD DL,30H
            MOV AH,02H
            INT 21H
            MOV DL,DH
            AND DL,0FH
            CMP DL,9H
            JBE  LP1
            ADD DL,7H
    LP1:    ADD DL,30H
            MOV AH,02H
            INT 21H
            MOV DL,'H'
            MOV AH,2
            INT 21H
    
            LEA DX, BLK
            MOV AH,09H
            INT 21H
            JMP START
            MOV AH, 4CH
            INT 21H  
    
    CODE    ENDS
            END START
    

    https://www.oschina.net/code/snippet_2378842_48580

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料