下面程序的功能是利用逻辑尺对BUF变量中的数据进行变换,执行该程序后,以RESULT为首地址的前2个字节单元中的数据,依次为______。DSEG SEGMENTBUF DB 1, 5, 4, 0, 7, 9, 2, 6L EQU 00111001B ; 用作逻辑尺RESULT DB 10 DUP(?)DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(0)SSEG ENDSCSEG SEGMENTASSUME DS:DSEG, SS:SSEG, CS:CSEGSTART PROC

题目

下面程序的功能是利用逻辑尺对BUF变量中的数据进行变换,执行该程序后,以RESULT为首地址的前2个字节单元中的数据,依次为______。

DSEG SEGMENT

BUF DB 1, 5, 4, 0, 7, 9, 2, 6

L EQU 00111001B ; 用作逻辑尺

RESULT DB 10 DUP(?)

DSEG ENDS

SSEG SEGMENT STACK

DB 256 DUP(0)

SSEG ENDS

CSEG SEGMENT

ASSUME DS:DSEG, SS:SSEG, CS:CSEG

START PROC FAR

PUSH DS

XOR AX, AX

PUSH AX

MOV AX, DSEG

MOV DS, AX

MOV SI, 0

MOV CX, 8

MOV DL, L

GOON: SHR DL, 1

JC FILL

MOV AL, BUF[SI]

JMP NEXT

FILL: MOV AL, OFFH

NEXT: MOV RESULT [SI] , AL

INC SI

LOOP GOON

RET

START ENDP

CSEG ENDS

END START


相似考题
更多“下面程序的功能是利用逻辑尺对BUF变量中的数据进行变换,执行该程序后,以RESULT为首地址的前2个字 ”相关问题
  • 第1题:

    某程序的目标代码为43981个字节,将其写到以字节编址的内存中,以80000H为首地址开始依次存放,则存放该目标程序的末地址为(4)。

    A.8FAAAH

    B.8AFFFH

    C.8ABCDH

    D.8DCBAH


    正确答案:C
    解析:43981转换为十六进制数为ABCD,加上80000H为8ABCDH。

  • 第2题:

    某程序的目标代码为16384个字节,将其写到以字节编址的内存中,以40000H为首地址开始依次存放,则存放该目标程序的末地址为(270)。

    A.41000H

    B.43FFFH

    C.44FFFH

    D.46000H


    正确答案:B
    解析:将16384化成16进制数得4000H,可以得到存放该程序的末地址为43FFFH。

  • 第3题:

    在虚拟内存管理中,地址变换机构将会把逻辑地址转变为物理地址,而形成该逻辑地址的阶段是()

    A.源程序编辑时

    B.程序编译时

    C.程序链接时

    D.程序装载时


    编译

  • 第4题:

    若将第6题程序中的SHR DL,1指令修改为SHL DL,1指令,则以RESULT为首地址的前2个字节单元中的数据依次为______。


    正确答案:01H05H
    01H,05H 解析:根据上面的分析知道,修改后的指令没有改变逻辑尺的功能,只是把读取数据的顺序改变了。若将程序中的SHR DL,1指令修改为SHL DL,1指令,则以RESULT为首地址的前2字节单元中的数据依次为01H,05H,总的数据依次是01H,05H,FFH,FFH,FFH,09H,02H,FFH。

  • 第5题:

    某程序的目标代码为16384个字节,将其写到以字节编址的内存中,以80000H为首地址开始依次存放,则存放该目标程序的末地址为______。

    A.81000H

    B.83FFFH

    C.84FFFH

    D.86000H


    正确答案:B
    解析:目标代码有16384个字节,这里指的是十进制16384,而将其写到以字节编址的内存中,以80000H为首地址开始依次存放,这里的80000H是十六进制。所以,根据题意只要将80000H+16384-1,所得的十六进制结果便是题目的答案。首先,将16384-1=16383转换为十六进制,可按连续除以16取每次余数的办法进行转换,连续取余的结果依次是15(OFH)、15、15、3,所以16383的十六进制便是3FFFH,加上80000H结果为83FFFH。选项B为正确答案。