简答题

阅读下列一段程序,分析数据段中BUF, DDBUF, DWBUF各变量的属性,并指出它们各自所在的段首址与偏移地址。程序中的DDBUF EQU THIS DWORD 和DWBUF EQU WORD PRT BUF两条语句有何功能? DATA    SEGMENT   DDBUF   EQU  THIS  DWORD  BUF     DB   100   DUP(?)  DWBUF   EQU  WORD  PRT BUF  DATA    ENDS          ┆  FIRST   EQU  THIS  FAR         LEA  SI , BUF          ┆

正确答案

变量BUF为字节类型,它所在的段首址为DATA,偏移地址为0。变量DDBUF为双字节类型,它与BUF具有相同的段属性和偏移地址属性。变量DWBUF为字类型,它与BUF具有相同的段属性和偏移地址属性。
DDBUF EQU THIS DWORD语句表明将紧跟它后面的字类型的变量BUF重新定义为双字类型,并命名为DDWBUF。
DWBUF EQU WORD PRT BUF语句是将BUF重新定义为字类型,并命名为DWBUF。

答案解析

相似试题
  • 阅读下列程序,注释①~⑧各条语句的功能,并画出程序执行后数据段中数据存放的格式。

    简答题查看答案

  • 定义数据段,段中内容符合下列要求: (1)TAB定义了一个十六进制字符表 (2)BUF定义了一个10字节的存储区,初值为0 (3)X定义了一个字存储区 (4)K定义了一个常数10

    简答题查看答案

  • 阅读下面的程序,回答问题 DATA SEGMENT BUF DB '1234' N=$-BUF BCD DB N DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA SI,BUF MOV CX,N LEA DI,BCD+N-1 LOOP1:MOV AL,[SI] SUB AL,30H MOV [DI],AL INC SI DEC DI DEC CX JNE LOOP1 MOV AH,4CH INT 21H CODE ENDS END START 如果将代码段中的指令LEA DI,BCD+N-1改成LEA DI,BCD;DEC DI改成INC DI,其它指令不变,程序执行后,从BCD开始的N个字节单元中的内容是什么?

    简答题查看答案

  • 现有下列数据段 下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区 (即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一个字符送到BUF的第一个单元)。试把程序中所空缺的指令填上。

    简答题查看答案

  • 有一缓冲区BUF,其中有10个数据,写出将此十个数据取出并相加的程序段。

    简答题查看答案

  • 下列程序段中数据“0102H”字的存储单元有多少? 0102H有()个。

    填空题查看答案

  • 编写一程序段,将数据区BUF中最大的数存入RES单元。数据段为:

    简答题查看答案

  • 编写一汇编语言子程序SEG7:完成与BCD码转换为七段显示码。已知七段显示器用低电平(逻辑0)输入点亮某一段,且该十进制数0~9的七段显示码表位于数据段中首地址为TABLE的内存区。注意查找表位于代码段,而XLAT指令默认的访问是数据段。

    简答题查看答案

  • 编写一程序段,统计数据区BUF中0的个数,并存入RES单元。数据段为:

    简答题查看答案