zoukankan      html  css  js  c++  java
  • 完整段定义1

    data segment     ;数据段    与段简化定义不同,除了代码段之外都要将相应段装入段寄存器
    mess db 'fenglei'
    lh equ $-mess   ;长度
    data ends

    extra segment   ;代码段
    mess1 db 7 dup(?)
    extra ends

    stack segment stack    ;堆栈段   得给sp赋值
    pe db 100 dup(?)
    stack ends

    code segment
    assume cs:code,ds:data,es:extra,ss:stack    ;确定cs,ds,es,ss指向的逻辑段
    main proc far      ;使用过程,主程序开始
    ;push ds            ;为程序返回dos设置堆栈值,入栈保存原ds地址,  和ret搭配 但不好使
    ;mov ax,0                     ;设置偏移地址为0
    ;push ax                     ;入栈保存偏移地址

    mov ax,data       ;段装入相应的段寄存器
    mov ds,ax
    mov ax,extra
    mov es,ax
    mov ax,stack
    mov ss,ax
    mov sp,8   ;设置sp,因为堆栈是字寻址的0,2,4,6。。。。。

    mov bx,1   ;bx置标准设备号1
    mov cx,lh   ;cx是输入串的长度
    mov dx,offset mess
    mov ah,40h
    int 21h


    ;ret           ;用过程返回dos操作系统
    mov ah,4ch
    int 21h
    main endp     ;主程序结束
    code ends      ;代码段结束
        end main     ;汇编结束   end [标号|过程名]  必须有end ,如果是子过程,没有标号和过程名 只有end



  • 相关阅读:
    hibernate4.3.5,Final hibernate.cfg.xml的配置
    mysql 入门 jdbc
    设计模式之责任链
    淘宝技术这十年
    java代码---------计算器实现
    java代码---------打印正三角形
    java代码=====实现修改while()
    java------------break;
    java代码-----循环变量的
    java代码----------实现写出循环
  • 原文地址:https://www.cnblogs.com/nanfengnan/p/13879019.html
Copyright © 2011-2022 走看看