zoukankan      html  css  js  c++  java
  • Hello World

    ;Program:Hello World
    ;
    Author:TryHard
    ;
    Date:2012/02/06

    SSEG: SEGMENT PARA STACK ;堆栈段
    DW 256 DUP(?) ;256大小
    SSEG ENDS

    DSEG SEGMENT ;数据段
    MESSAGE DB 'Hello',0DH,0AH,'$' ;0DH,0AH换行,以'$’结束
    DSEG ENDS

    CSEG SEGMENT ;代码段
    ASSUME CS:CSEG, DS:DSEG,SS:SSEG
    START:
    MOV AX,DSEG ;取得数据段基址
    MOV DS,AX ;设置数据段

    ;显示
    MOV DX,OFFSET MESSAGE ;取得MESSAGE基址
    MOV AH,9
    INT 21;

    ;结束
    MOV AH,4CH
    INT 21H
    CSEG ENDS
    END START

    总结:

       内存就是一个池塘,如果把一条鱼放入其中,过后再打捞出来,如果在池塘中放一些围栏标识养了哪些鱼,再这条鱼放入,过后再打捞. 两种方法都可以把鱼打捞出来 

    只是快慢而已.

       80X86中也是把内存分成数据段,堆栈段,代码段,在每个段中查找数据比在一个大内存中查找数据当然快得多,

      段是有大小,因为16位CPU只能做16位的运算,所以段空间只有 64KB大,也就是寻址能力只能在000H-FFFH中

      

    ;分析
    ;
    程序汇分为三个段:堆栈段,数据段,代码段
    ;
    程序入口从START开始执行
    ;
    Assume 关联各个段

    mov AX,DSEG;相当于 AX=DSEG
    mov DS,AX ; DS=AX

    MOV DX,OFFSET MESSAGE; OFFSET作用是得到变量MESSAGE 的地址
    MOV AH,9
    INT 21; ;中断功能用于显示DOS

    ;段的声明


    [NAME]: SEGMENT
    [NAME]: ENDS


     

  • 相关阅读:
    MySQL 正则表达式
    spark 应用场景2-身高统计
    spark 应用场景1-求年龄平均值
    spark jdk8 单词统计示例
    spark 常用函数介绍(python)
    Spark如何读写hive
    sparkJavaApi逐个详解
    Spark基础与Java Api介绍
    Spark函数详解系列之RDD基本转换
    Spark中使用Java编程的常用方法
  • 原文地址:https://www.cnblogs.com/pengshaomin/p/2340340.html
Copyright © 2011-2022 走看看