汇编语言基础4
来源:互联网 发布:越狱铃声软件 编辑:程序博客网 时间:2024/06/07 04:02
汇编语言基础4
一个包含多个段的程序:
ds寄存器一般存放数据段的段地址,cs:ip这两个寄存器一般存放的是代段的具体地址,es 段一个可以使用的临时存放变量的寄存器,SS:SP一般存放的就是栈的具体地址,前者位栈的段地址后者为栈的偏移地址。一般程序都有代码段,数据段,文本段,我们希望CPU 从代码段读取指令,通过使用栈来对数据段的数据进行修改,那么程序的本质就能够体现了。
这个程序是将0123H 0456H 这两个数据进行交换
assume cs:code ,ds:data,ss:stack 伪指令定义三个段地址
data segment
dw 0123h,0456h 定义数据段
data ends
stack segment 定义栈段
dw 0,0
stack ends
start: mov ax,stack
mov ss,ax
mov sp,16 给栈段赋上具体的地址
mov ax,data
mov ds,ax
push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]
使用栈来进行交换
mov ax,4c00h
int 21h
code ends
end start
- 汇编语言基础4
- 汇编语言基础
- 汇编语言基础
- 汇编语言基础
- 汇编语言程序的基础
- 汇编语言学习-基础篇
- 汇编语言基础之寄存器
- 汇编语言基础1
- 汇编语言基础2
- 汇编语言基础3
- 汇编语言基础学习
- 汇编语言基础-寄存器(一)
- 汇编语言基础--嵌入式
- 8086/8088汇编语言基础
- 汇编语言的基础
- 汇编语言基础入门知识
- 汇编语言基础1
- 汇编语言基础2
- hdu 1711 整理下水题
- BZOJ3190 [JLOI2013]赛车(单调栈+半平面交)
- 黑马程序员-堆与栈
- The Skyline Problem
- RS485通讯协议的应用
- 汇编语言基础4
- [leetcode] Construct Binary Tree from Inorder and Postorder Traversal
- C和C++程序员面试秘籍
- MySQL按照汉字拼音字母排序
- 求一个数据结构C语言 关于关键字统计源代码
- 模板-高精度A+B,A-B
- Single Number
- SeqList.
- nefu1009消灭兔子 优先队列