汇编——单字符输入输出+字符串输入输出(换行实现)

单字符输入输出

bash 复制代码
;默认采用ML6.11汇编程序
DATAS SEGMENT
    CHAR DB ?;CHAR存储输入的字符
    CHANGELINE DB 13,10,'$';用来表示换行符  
DATAS ENDS

STACKS SEGMENT
    DB 128 DUP(?)
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    
    ;输入字符
    MOV AH,0
    INT 16H
    MOV CHAR,AL
    
    ;输出字符
    MOV DL,CHAR
    MOV AH,2
    INT 21H
    
    ;输出换行符
    MOV DX,OFFSET CHANGELINE
    MOV AH,9
    INT 21H
    
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

字符串输入输出

bash 复制代码
;默认采用ML6.11汇编程序
DATAS SEGMENT
    CHANGELINE DB 13,10,'$';表示换行符
    BUF DB 30,?,30 DUP(?) ;存储输入的字符串(DUP 数组)
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    
    ;输入字符串
    LEA DX,BUF;字符串的存储地址
    MOV AH,0AH
    INT 21H
    
    ;输出字符串
    MOV DX,OFFSET CHANGELINE
    MOV AH,9
    INT 21H
    
    
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START
相关推荐
菜菜why2 天前
详细解析单片机启动汇编文件:以startup_stm32f407xx.s为例
汇编·单片机·嵌入式硬件·嵌入式软件
马里奥的蘑菇云3 天前
ARM GCC内联汇编
汇编·arm
AI迅剑4 天前
模块三:现代C++工程实践(4篇)第二篇《性能调优:Profile驱动优化与汇编级分析》
汇编·c++
代码改变世界ctw5 天前
ARM汇编编程(AArch64架构)第13课:多核启动与调度
汇编·arm开发·架构
代码改变世界ctw5 天前
ARM汇编编程(AArch64架构)课程 - 第9章:原子操作与同步
汇编·arm开发·架构
代码改变世界ctw6 天前
2.2 TF-A在ARM生态系统中的角色
汇编·arm开发·安全·trustzone·atf·optee
baynk6 天前
逆向入门(9)汇编篇-bound指令的学习
汇编·学习
无小道7 天前
c++--typedef和#define的用法及区别
c语言·开发语言·汇编·c++
代码改变世界ctw9 天前
ARM汇编编程(AArch64架构)课程 - 第5章函数调用规范
汇编·arm开发·架构
liulilittle9 天前
C/C++ inline-hook(x86)高级函数内联钩子
c语言·开发语言·汇编·c++·hook·底层·钩子