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


     

  • 相关阅读:
    ORACLE常用SQL优化hint语句
    TestNG 入门教程
    博客迁移
    WebMvcConfigurer
    Nginx 配置
    SpringBoot部署
    MyBatis 动态 SQL
    Spring Boot 验证表单
    Spring Boot session与cookie的使用
    Spirng MVC 重定向传递对象
  • 原文地址:https://www.cnblogs.com/pengshaomin/p/2340340.html
Copyright © 2011-2022 走看看