汇编程序的简化写法

简介: 【说明】汇编语言提供了段定义等的简化写法的伪操作,可以使代码写得更简略一些。要将汇编语言作为工作语言使用的同学,可以在这一方面找资料深入一些【案例】输出hello world!.8086.MODEL small.data str db 'hello world!$'.stack 20H.codestart: mov ax,@data mov ds,ax lea bx,str ;这儿简单地用mov bx, 0将有逻辑错误。

【说明】汇编语言提供了段定义等的简化写法的伪操作,可以使代码写得更简略一些。要将汇编语言作为工作语言使用的同学,可以在这一方面找资料深入一些

【案例】输出hello world!

.8086
.MODEL small
.data
  str db 'hello world!$'
.stack 20H
.code
start: mov ax,@data
       mov ds,ax
       lea bx,str ;这儿简单地用mov bx, 0将有逻辑错误。这取决于模式,请自行debug观察
output:mov dl, [bx]
       cmp dl, '$'
       je stop
       mov ah, 02H
       int 21h
       inc bx
       jmp output

 stop: mov ax,4c00h
       int 21h
end start

下面的写法,得到相同的运行结果:

assume cs:codesg, ss:stacksg, ds:datasg
stacksg segment
    db  32 dup (0)
stacksg ends
datasg segment
     str db 'hello world!$'
datasg ends
codesg segment
start: mov ax,datasg
       mov ds,ax
       mov ax, stacksg
       mov ss, ax
       mov sp, 20h

       lea bx,str
output:mov dl, [bx]
       cmp dl, '$'
       je stop
       mov ah, 02H
       int 21h
       inc bx
       jmp output

 stop: mov ax,4c00h
       int 21h
codesg ends
end start
目录
相关文章
51单片机用汇编语言实现独立按键检测,每个按键有不同功能,包含按键消抖程序
51单片机用汇编语言实现独立按键检测,每个按键有不同功能,包含按键消抖程序
364 3
|
12月前
加快软盘操作速度的汇编程序源代码
加快软盘操作速度的汇编程序源代码
|
程序员 编译器 数据处理
汇编高手秘籍:解锁性能优化新境界,用汇编语言让你的程序飞起来!
【8月更文挑战第31天】汇编语言作为编程基石,其高效性能备受推崇。尽管现代软件开发更偏爱高级语言,但在性能要求极高的场景下,汇编优化仍不可或缺。本文通过示例代码介绍四种优化技巧:循环展开、寄存器分配、指令重排及SIMD指令使用,显著提升执行效率。同时强调分析性能瓶颈、测试优化效果及保持代码可读性的重要性,助力开发者在关键代码路径上实现性能突破。
572 0
|
编译器 开发者 C++
8086 汇编笔记(三):第一个程序
8086 汇编笔记(三):第一个程序
|
存储 编译器
C51汇编程序
C51汇编程序
199 5
程序技术好文:部分ARM汇编指令解读
程序技术好文:部分ARM汇编指令解读
|
程序员 芯片 流计算
MOTOROLA MVME 162-01 直接用汇编语言编程的计算机程序
MOTOROLA MVME 162-01 直接用汇编语言编程的计算机程序
234 0
MOTOROLA MVME 162-01 直接用汇编语言编程的计算机程序
|
存储 API C语言
从反汇编看恶意程序的C语言结构(二)
从反汇编看恶意程序的C语言结构
234 0
|
编译器 API 分布式数据库
从反汇编看恶意程序的C语言结构(一)
从反汇编看恶意程序的C语言结构
203 0