基础-5

作者: 秣崖 | 来源:发表于2017-01-19 14:02 被阅读0次

多个代码段的程序

这种思想即: 将程序分为代码段,数据段,栈段

为规范内存的使用,程序员是不能随便决定内存空间的使用,应该让系统进行分配例如 数据段的并且连接的程序段.

数据段指令dw(define word):

       dw 1020h,2123h,0f212h  //定义字数据 若是在程序开头定义,则其偏移地址分别为0 2 4.  按照字符编址的.

//传输数据的宽度,则是能找到字符数据的地址位数.即可寻址范围

要注意:  定义的字数据段的数据长度和偏移地址的关系. 偏移地址以字符为单位编址,就先把定义的数据段计算出占多少字符.再加上当前偏移地址,并用16进制进行表示.

同时,定义了这些数据,也等价于申请了一定的内存空间.

通过end 标记//来指明代码段执行的入口

多段框架

将栈段,数据段,代码段分别处理

assume cs:code,ds:data,ss:stack  //这一句只是提醒编译器,而无任何实质性作用

data segment

dw 0123h , 0223h , 0323h , 0254h ,0fff2h

data ends

stack segment

dw 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

stack ends

code segment

start:    mov ax,stack   //stack段 地址    

            mov ss,ax        //设置栈段寄存器

            mov sp,1Ch     //设置栈偏移地址(最大地址,栈底)

            mov ax,data     //data段  地址  

            mov ds,ax       //设置数据段的段寄存器

            mov bx,0

            mov  cx,8

           s:  push  [bx]

                add bx,2

           loop  s

             mov  ax,4c00h

             int 21h

code ends

end start

这段程序中,stack ,data , code ,start均为可变的名称。assume 只是关联了寄存器和段名并未让寄存器真正的赋值。cpu会根据end start 中start的标志来明确cs:ip的执行接口。分开段写目前有两个优点:1,有标志代表stack,data的入口地址。 2,容易区分

但是在过程中,其在内存中的分布依然是连续的。内存的分配和段的位置是相关的。

汇编中不能使用//进行注释

相关文章

  • 带你零基础学习HTML5

    1个HTML5基础入门教程,4个HTML5小项目教程,带你零基础入门学习HTML5。 【HTML5基础入门】 教程...

  • Swift5 基础教程与进阶合集

    Swift5 基础 Swift5 基础(一)Swift编译流程、基础语法、流程控制、函数、枚举[https://w...

  • javaSe-02-运算符

    基础运算符 基础的比如 + - * / %下边有几个特殊的: 5/2 =2 5/2.0 = 2.5 5/0 = 抛...

  • 基础5

  • 基础-5

    多个代码段的程序 这种思想即: 将程序分为代码段,数据段,栈段为规范内存的使用,程序员是不能随便决定内存空间的使用...

  • 面试清单

    1. 多线程(基础) 2. Runtime(基础) 3. Runloop(基础) 4. AFN原理(基础) 5. ...

  • 系列课程之基础入门-playbook基础

    系列课程之基础入门-playbook基础 课程指数 难度指数: 4星(满星5星)技术指数: 5星(满星5星)理论指...

  • HTML5+JavaScript动画基础 完整版 中文pdf扫描

    《HTML5+JavaScript动画基础》包括了基础知识、基础动画、高级动画、3D动画和其他技术5大部分,分别介...

  • Python基础(5)_函数基础

    一、打印,导入的一些知识 1.分隔符拼接输出 print("I","wish","you",sep="_")==>...

  • 线性代数题

    2018-1-5. 求下列方程的基础解系 所以,显然有基础解系 2018-1-5. 求下列方程的基础解系 显然有基...

网友评论

      本文标题:基础-5

      本文链接:https://www.haomeiwen.com/subject/yycibttx.html