数据、代码、栈放入不同的段

在学习汇编语言,将数据、代码、栈放入不同的段。参考王爽老师的《汇编语言》第四版,对P133的汇编代码,进行了个人理解标注。仅供参考,存在错误之处,请大家斧正。

参考物理逻辑图片:

assume cs:b, ds:a, ss:c; // 代码段cs、数据段ds、栈段ssa segment dw 0123h,0456h,0789h,abcdh,0defh,0fedh,0cbah,0987h // 共8个字节
a endsc segmentdw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 // 共16个字节
c endsb segment
d : mov ax,c // 初始栈段,C段当作栈空间mov ss,ax // ss:sp指向C:20mov sp,20hmov ax,a // 初始数据段a mov ds,ax  // ds指向a段mov bx,0 // 该小段代码为数据入栈mov cx,8 // ds:bx 指向a段第一个单元s:push [bx] // (0-15单元)依次入栈 add bx,2loop s  mov bx,0 // 该小段代码为数据出栈mov cx,8s0:pop [bx]add bx,2loop s0mov ax,4c00h // 程序结束的标志int 21h
b ends
end d

汇编语言中将数据、代码、栈放入不同的段相关推荐

  1. 将数据、代码、栈放入不同的段

    在前面的内容中,我们在程序中用到了数据和栈,将数据.栈.和代码都放到一个段里面.我们在编程的时候要注意何处是数据.何处是栈.何处是代码.这样做的两个问题: ①把它们放到一个段中使程序更加的混乱 ②当数 ...

  2. 贺利坚老师汇编课程30笔记:将数据、代码、栈放入不同段

    指路老师的博客主页 只用一个段,程序显得混乱 把数据.代码.栈放入不同段 ASSUME CS:CODE,DS:DATA,SS:STACK DATA SEGMENT DW 0123H,0456H,078 ...

  3. 汇编语言将数据、代码、栈放入不同段基础

    Code内部逻辑: Start 初始化各段寄存器 入栈 出栈 物理逻辑: 代码实现: assume cs:code, ds:data, ss:stack; // 代码段cs.数据段ds.栈段ssdat ...

  4. 将数据、代码、栈放入不同的栈(8086)

    先上程序: assume cs:code,ds:data,ss:stackdata segmentdw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h ...

  5. ppt python 图表_利用python分析weibo数据做成图表放入PPT中

    起因 很久以前,就有个想法,就是自动分析微博的数据,但是之前一直想的是网页版展示,flask想学了好久都没学,偶然的一次看到了一篇关于python处理pptx的文章,再加上同窗三年的室友在毕业后竟然主 ...

  6. python录入数据至ppt_利用python分析weibo数据做成图表放入PPT中

    起因 很久以前,就有个想法,就是自动分析微博的数据,但是之前一直想的是网页版展示,flask想学了好久都没学,偶然的一次看到了一篇关于python处理pptx的文章,再加上同窗三年的室友在毕业后竟然主 ...

  7. 向海康大华播放器放入数据,一会就提示buffer满的原因

    在使用海康大华播放器进行视频解码,往往通过网络SDK接收到网络流,然后再将数据向播放器input,但是可能一会播放器就会提示已满的错误信息(当然这里不是只放不取的). 这些播放器通常有播放倍速,默认是 ...

  8. Java实现栈的入栈和出栈等基本操作

    栈的英文为(stack) 栈是一个先入后出(FILO-First In Last Out)的有序列表. 栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表.允许插入 ...

  9. mysql去重查询并将结果放入新表

    CREATE TABLE 表名 AS SELECT DISTINCT 字段 FROM 查询表名; # 将数据去重并放入新表中ALTER TABLE 表名 ADD id INT(11) PRIMARY ...

最新文章

  1. ts引入公共方法_vue3+TS+ant2.0 实践指南
  2. Android之如何优雅的管理ActionBar
  3. Zulip 2.0.1 发布,功能强大的群组聊天软件
  4. 使用观察者模式在 Silverlight 中切换用户控件
  5. java中对于异常的处理,代码简单描述
  6. animation停留_这些Animation动画技巧与细节你知道么
  7. CF618F-Double Knapsack【结论】
  8. 使用webpack打包后的vue项目如何运行(express)
  9. cm0中断优先级_转:第13章 FreeRTOS任务优先级修改及其分配方案
  10. 内存还剩余很多,却使用 swap 分区
  11. python sys.path.append()添加路径_Python调用CST进行天线建模仿真:环境搭建指南
  12. mysql 使用jdbctemplate_SpringBoot学习笔记-使用jdbcTemplate访问mysql
  13. 工控2月补丁星期二:西门子、施耐德电气修复近50个漏洞
  14. Chrome渲染Transition时页面闪动Bug
  15. windows远程桌面无法粘贴复制的问题解决方法
  16. 欧拉定理以及欧拉降幂
  17. Java毕设项目宠物医院管理系统计算机(附源码+系统+数据库+LW)
  18. C语言程序设计实验报告——实验四
  19. WordPress主题_大前端DUX主题7.1原版+优化-91apps.cn就要应用网
  20. spring中aop默认使用jdk动态代理,springboot2以后默认使用cglib来实现动态代理详解

热门文章

  1. 系统架构升级要不要上微服务?历“久”弥新微服务——你真的需要升级微服务架构吗
  2. Centos配置yum为阿里源
  3. 【Design pattern】设计模式思路总结(三)
  4. 什么是码元计算机通信
  5. 分离内核和虚拟机支持安全的关键任务边缘计算
  6. 人脸真伪验证与识别:ICCV2019论文解析
  7. 2021年大数据Hive(十一):Hive调优
  8. Android studio 导入jar 文件
  9. 课后习题代码持续更新。。。。。。。。。。。。。
  10. DS博客作业04--树大作业