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



  • 相关阅读:
    Laravel 禁用指定 URL POST 请求的 csrf 检查
    laravel console
    python之面向对象(一)
    python中os.popen, os.system()区别
    Day6作业:计算器
    Day5作业,商城+ATM机+后台管理
    python基础之反射
    python基础之坑爹正则表达式
    python基础之模块(一)
    python 中的一些基础算法:递归/冒泡/选择/插入
  • 原文地址:https://www.cnblogs.com/nanfengnan/p/13879019.html
Copyright © 2011-2022 走看看