【汇编语言-王爽】第六章:包含多个段的程序

知识点

  • start标号:在源程序中指明程序的入口。

实验5: 编写、调试具有多个段的程序

代码

(5) 将a段和b段中的数据依次相加,将结果存到c段。

复制代码
assume cs:code

a segment
        db 1,2,3,4,5,6,7,8
a ends

b segment
        db 1,2,3,4,5,6,7,8
b ends

c segment
        db 0,0,0,0,0,0,0,0
c ends

code segment     
         start: mov ax,c
                mov es,ax

                mov bx,0
                mov cx,8

             s: mov dx,0

                mov ax,a
                mov ds,ax
                mov dx,ds:[bx]

                mov ax,b
                mov ds,ax
                add dx,ds:[bx]

                mov es:[bx],dx
                
                inc bx
                loop s

                mov ax, 4c00h
                int 21h

code ends
end start

(6)用push指令将a段中的前8个字型数据,逆序存储到b段中。

复制代码
assume cs:code
a segment
        dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends

b segment
        dw 0,0,0,0,0,0,0,0
b ends

code segment
        start:  mov ax,b
                mov ss,ax
                mov sp,16

                mov ax,a
                mov ds,ax

                mov bx,0
                mov cx,8
             s: push ds:[bx]
                inc bx
                inc bx

                loop s

                mov ax,4c00h
                int 21h

code ends
end start
相关推荐
蜀黍@猿13 小时前
ARM 汇编入门(十二):MMU、页表与虚拟内存全解析
汇编·arm开发·stm32·mcu
蜀黍@猿2 天前
ARM 汇编入门(十):标量浮点与 VFP 指令全解析
汇编·arm开发·stm32·mcu
水饺编程11 天前
第2章:Linux 基础,解压缩【.tar.bz2】压缩包文件
linux·c语言·汇编
Zevalin爱灰灰11 天前
Linux入门第二部分(ARM裸机篇) 第二章 Cortex-A7 MPCore架构与ARM汇编基础
linux·汇编·arm开发·嵌入式
Zevalin爱灰灰11 天前
Linux入门第二部分(ARM裸机篇) 第三章 汇编LED驱动实验
linux·汇编·arm开发
水饺编程12 天前
第2章:Linux 基础,制作【.tar.xz】压缩包文件
linux·c语言·汇编
小向是个Der14 天前
嵌入式进阶——编译与链接
汇编·单片机·学习·编译原理·交叉编译
二十七日秋14 天前
算法刷题笔记「Day 1|四道 OJ 入门题里的深坑」
c语言·汇编·数据结构·c++·笔记·python·算法
银河麒麟操作系统15 天前
两案例入选全球计算联盟年度产业应用案例汇编
大数据·汇编·人工智能
abc light15 天前
ARM 裸机开发(2)——ARM 汇编与启动代码
汇编·arm开发