调用0A中断输入字符串数据段的DUP定义

;这是自动生成的代码模板
      STACKS  SEGMENT   STACK       ;堆栈段
              DW        128 DUP(?)  ;注意这里只有128个字节
      STACKS  ENDS
       DATAS  SEGMENT               ;数据段
      STRING  DB        200,?,200 DUP(?)  ;定义成STRING DB 200 DUP(?)运行失败。
;请在这里定义您的数据

       DATAS  ENDS
       CODES  SEGMENT               ;代码段
              ASSUME    CS:CODES,DS:DATAS
      START:  MOV       AX,DATAS    ;初始化
              MOV       DS,AX

              LEA       DX,STRING
              MOV       AH,0AH
              INT       21H
;请在这里添加您的代码

              MOV       AX,4C00H    ;退出程序
              INT       21H
       CODES  ENDS
              END       START
时间: 2024-11-10 12:00:45

调用0A中断输入字符串数据段的DUP定义的相关文章

DOS功能调用——单个字符及字符串的输入输出

DOS系统功能调用步骤:    1. AH <- 功能号    2.指定寄存器放入该功能所要求的入口参数    3.执行int 21H    4.分析出口参数 单字符输入输出 01h键盘输入            AL=输入字符    02h显示器输出            DL=输出字符    07h直接控制台输入(无回显)    AL=输入字符    08键盘输入(无回显)        AL=输入字符======================汇编例子===================

比较分别在数据段与附加段中的字符串以及汇编中常见的四种中断指令

1.从键盘输入两个相同长度的字符串,分别放到数据段和附加段,利用串比较指令比较数据段和附加段中两个字符串,如果两串一样,输出Y,否则输出N. 这个程序调试了好久,之间遇到两个问题,其一是附加段的使用,需要对DS压栈对ES调整处理,即 1 PUSH DS 2 MOV AX,ES 3 MOV DS,AX 4 ;...... 5 POP DS 其二是,串比较指令CMPSW进行字比较,而CMPSB进行字节比较,需要区分开.(其实我现在还不明白即便是字符组成的串,进行字比较为什么会出错,有高手知道吗?)

使用BIOS中断显示字符串笔记(int 10h 13号中断)

BIOS的10H中断的13号中断用于显示字符串,参数为: 1.AH=13H 2.AL=显示方式 如果AL=0,表示目标字符串仅仅包含字符,属性在BL中包含,不移动光标 如果AL=1,表示目标字符串仅仅包含字符,属性在BL中包含,移动光标 如果AL=2,表示目标字符串包含字符和属性,不移动光标 如果AL=3,表示目标字符串包含字符和属性,移动光标 总之,可以归纳为: |BIT7|BIT6|BIT5|BIT4|BIT3|BIT2|BIT1|BIT0| AL BIT0为0表示不移动光标,为1表示移动光

C#调用API向外部程序发送数据

C#调用API向外部程序发送数据 最近有可能要做一个项目.在项目中有这么一个功能,在A程序中调用B程序,同时在A程序中进行登陆后,要将A程序的登录名和密码自动填充到B程序的登陆对话框中,这样B程序就不需要再输入一次用户名和密码了,简化操作人员的操作.刚好最近闲着没事,就在怎么想怎么去实现.经过两天的折腾,基本上完成了上述功能的实现.下面就把实现方法.过程与大家进行分享. 一.原理 要实现上述功能,需要调用Win API来实现.Win32 API即为Microsoft 32位平台的应用程序编程接口

(转)Linux下数据段的区别(数据段、代码段、堆栈段、BSS段)

进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等.不过进程对这些内存的管理方式因内存用途 不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的.对任何一个普通进程来讲,它都会涉及到5种不同的数据段. Linux进程的五个段 下面我们来简单归纳一下进程对应的内存空间中所包含的5种不同的数据区都是干什么的. BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BS

Linux5个数据段

进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等.不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的.对任何一个普通进程来讲,它都会涉及到5种不同的数据段. 下面我们来简单归纳一下进程对应的内存空间中所包含的5种不同的数据区都是干什么的. BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Sta

BSS段、数据段、代码段、堆与栈

BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域. BSS是英文Block Started by Symbol的简称.BSS段属于静态内存分配. 数据段:数据段(data segment)通常是指用来存放程序中已初始化的全局变量的一块内存区域. 数据段属于静态内存分配. 代码段:代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区 域.这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读

程序运行中(BSS段、数据段、代码段、堆栈)

程序运行中(BSS段.数据段.代码段.堆栈) BSS段:(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简称.BSS段属于静态内存分配. 数据段 :数据段(data segment)通常是指用来存放程序中 已初始化 的 全局变量 的一块内存区域.数据段属于静态内存分配. 代码段: 代码段(code segment/text segment)通常是指用来存放 程序执行代码 的一块内存区域.这部分区域的大小

stm32RS485串口通信——中断接收发送数据

功能:通过PC机的串口调试助手发送数据给串口A,串口B接收到串口A发送的数据,再由串口B将接收到的数据返回给PC机的串口调试助手. PC->串口A->串口B->PC. 实验平台:stm32f407 /********************************************************************* 本平台具有六个串口: com1  485 com2 com3  232 需一个管脚控制DTU com4 485 com5  调试串口  TTL com6