初一5班共64人,已知每个学生的数学成绩存放在SCODE开始的单元中,求其平均成绩,并放在PJCD单元。试填写下面程序段。 DATA SEGMENT SCODE DB 68, 95, 76,…. PJCD DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AX,O MOV CX, 30 MOV SI,() ADD1:ADD AL() JNC() INC() NEXT:INC() LOO

题目

初一5班共64人,已知每个学生的数学成绩存放在SCODE开始的单元中,求其平均成绩,并放在PJCD单元。试填写下面程序段。 DATA SEGMENT SCODE DB 68, 95, 76,…. PJCD DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AX,O MOV CX, 30 MOV SI,() ADD1:ADD AL() JNC() INC() NEXT:INC() LOOP() MOV CL,6 SHR(),CL MOV PJCD,() MOV AH,4CH INT 21H CODE ENDS END START


相似考题
参考答案和解析
正确答案:OFFSEFSCODE;[SI];NEXT;AH;SI;ADD1;AX;AL
更多“初一5班共64人,已知每个学生的数学成绩存放在SCODE开始的单元中,求其平均成绩,并放在PJCD单元。试填写下面程序段。 DATA SEGMENT SCODE DB 68, 95, 76,…. PJCD DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AX,O MOV CX, 30 MOV SI,() ADD1:ADD AL() JNC() INC() NEXT:INC() LOOP”相关问题
  • 第1题:

    完成下面的程序段,使程序显示中的字符串。

    DATA SEGMENT

    BUE DB ‘HOW DO YOU DO?’,ODH,OAH,’$‘

    DATA ENDS

    CODE SEGMENT

    MOV AX,DATA

    MOV DS,AX

    MOV DX【 】

    MOV AH, 9

    INT 21H

    CODE ENDS


    正确答案:OFFSET BUF
    OFFSET BUF 解析:把BUF的偏移地址放到中,准备显示。

  • 第2题:

    下列程序段执行完后,A单元的内容是【 】H。

    DATA SEGMENT

    A DW 0

    B DW 0

    C DW 230,20,54

    DATA ENDS

    CODE SEGMENT

    ……

    MOV BX,OFFSET C

    MOV AX,[BX]

    ADD B,AX

    MOV AX,2[BX]

    SAL AX,1

    ADD AX,B

    MOV A,AX

    ……

    CODE ENDS


    正确答案:0EEH
    0EEH 解析:本题中,都是以字存放的,把C中十进制数转化为十六进制数为E6H,14H,36H。执行MOV BX,OFFSET C和MOV AX,[BX]指令后,AX=E6H,让AX和B中的值相加后B中的值也为E6H,MOV AX,2[BX]是把BX的偏移地址加2,然后取值给AX,即14H。经算术左移1位后再和B相加得EEH。

  • 第3题:

    执行以下程序段后,(AX)=( )。 MOV AX,0 MOV BX,1 MOV CX,100 A: ADD AX,BX INC BX LOOP A HLT

    A.5000

    B.5050

    C.5100

    D.5150


    正确答案:B

  • 第4题:

    执行下列程序后,(CX)=( )。 DATA SEGMENT A DW 1, 2, 3, 4, 5 B DW 5 DATA SEGMENT CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX LEA BX, A ADD BX, B MOV CX, [BX] MOV AH, 4CH INT 21H CODE ENDS END START

    A.400

    B.0

    C.10

    D.100


    正确答案:A
    解析:当执行指令“LEABX,A”时,将A相对数据段首地址的偏移量0送入BX寄存器,执行指令“ADDBX,B”后,(BX)=5。再执行指令“MOVCX,[BX]”时,由于源操作数是寄存器间接寻址方式且该指令为字传送指令,因此应将相对数据段首地址、偏移地址为0005的内容0400送入CX寄存2S。所以上述程序执行完后,(CX)=400。

  • 第5题:

    在书写汇编语言程序时,在代码段中初始位置要对数据段进行加载,加载的指令语句,下面()描述正确。 

    • A、mov ax,data
    • B、mov ds,data
    • C、mov ax,data  mov ds,ax
    • D、mov ax,ds  mov cs,ds

    正确答案:C

  • 第6题:

    阅读下列程序段,指出①~④ 条语句操作的结果,并分析其中有错误的语句。 DATA   SEGMENT  V1     DB     5  V2     EQU    10 DATA   ENDS           ①     INC    V1  ②     INC    V2  ③     MOV    AX, V2  ④     INC    AX


    正确答案: ①(V1)+1=5+1=6→V1;
    ②错误语句,因为变量V2为立即操作数;
    ③10→AX;
    ④(AX)+1=10+1=11→AX,但V2并未改变。

  • 第7题:

    阅读下面的程序,回答问题 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 取消数据段的BCD存储区,将处理后的数据放回原处,应如何修改程序?


    正确答案: 取消数据段的BCD存储区,将经处理后的数据放回原处,修改程序如下:
    DATA SEGMENT
    BUF DB '1234'
    N=$-BUF
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE,DS:DATA
    START:MOV AX,DATA
    MOV DS,AX
    LEA SI,BUF
    MOV CX,N
    LOOP1:MOV AL,[SI]
    SUB AL,30H
    MOV [SI],AL
    INC SI
    DEC CX
    JNE LOOP1
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END START

  • 第8题:

    阅读下面的程序,回答问题 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 说明程序功能,程序执行后,从BCD开始的N个字节单元中的内容是什么?


    正确答案:程序功能是将从BUF开始的连续4个字符’1234’转变为4个对应的数值,按逆序存放到以变量BCD为首地址的存储单元中。程序执行后,从BCD开始的N个字节单元中的内容是4321。

  • 第9题:

    阅读下列程序段,注释指令中计算符LENGTA的取值.  DATA     SEGMENT  A        DW     10 DUP(?), 1234H,  20 DUP(?)  B        DB    ‘ABCDEF’,6 DUP(?)  C        DW     10, 20 DPU(?)  D        DW     5 DUP(3 DUP(2),5)  DATA     ENDS                ┆  ①       MOV     AX, LENGTH  A  ②       MOV     BX ,LENGTH  B  ③       MOV     CX ,LENGTH  C  ④       MOV    DX ,LENGTH  D


    正确答案: ①10→AX;
    ②1→BX;
    ③1→CX;
    ④5→ DX.

  • 第10题:

    问答题
    已经定义数据段如下: DATASEGMENT NUM=56 X DB NUM Y DB 27 Z DW 148 DATAENDS 指出下列指令中的错误: (1)MOV Y,X (2)MOV BL,04B8H (3)MOV AL,Z (4)MOV [BX],3 (5)MOV [BX],[DI] (6)MOV DS,DATA (7)MOV NUM,AX (8)MOV ES,DS (9)MOV AX,FLAGS (10)MOV CS,AX

    正确答案: (1)指令MOV Y,X同时出现了两个存储器操作数。
    (2)指令MOV BL,04B8H操作数类型不匹配(04B8H是16位立即数,BL是8位寄存器)。
    (3)指令MOV AL,Z操作数类型不匹配(Z是16位操作数,BL是8位寄存器)。
    (4)指令MOV [BX],3操作数类型不能确定。
    (5)指令MOV [BX],[DI]出现了两个存储器操作数。
    (6)指令MOV DS,DATA不能把立即数装入段寄存器。
    (7)指令MOV NUM,AX立即数不能用作目的操作数。
    (8)指令MOV ES,DS不能在段寄存器之间直接传输。
    (9)指令MOV AX,FLAGS中,FLAGS寄存器只能隐含在少量指令中使用。
    (10)指令MOV CS,AX中,CS寄存器不能用作目的操作数。
    解析: 暂无解析

  • 第11题:

    单选题
    在书写汇编语言程序时,在代码段中初始位置要对数据段进行加载,加载的指令语句,下面()描述正确。
    A

    mov ax,data

    B

    mov ds,data

    C

    mov ax,data  mov ds,ax

    D

    mov ax,ds  mov cs,ds


    正确答案: C
    解析: 暂无解析

  • 第12题:

    问答题
    阅读下列程序段,注释指令中属性分离符的功能。 DATA    SEGMENT       A       DW   20,100,-60H      B       DB  ‘ABCDEFG ’  DATA    ENDS             ┆  ①MOV AX,  SEG B  ②MOV BX,  OFFSET B ③MOV CX,  TYPE A  ④MOV  DX ,  TYPE B

    正确答案: ①段首址DATA→AX
    ②变量B的偏移量6→BX
    ③2→CX
    ④1→DX
    解析: 暂无解析

  • 第13题:

    阅读下述程序,指出宏指令ABC的功能是______。

    1 ABC MACRO X1,X2,X3

    2 LOCAL CONT

    3 PUSH AX

    4 MOV AX, X1

    5 SUB AX, X2

    6 CMP AX, 0

    7 JGE CONT

    8 NEG AX

    9 CONT: MOV X3, AX

    10 POP AX

    11 ENDM

    12 DATA SEGMENT

    13 X DW 32

    14 Y DW 98

    15 Z DW ?

    16 DATA ENDS

    17 CODE SEGMENT

    18 ASSUME CS:CODE,DS:DTAT

    19 BEGIN: MOV AX, DATA

    20 MOV DS,AX

    21 ABC X,Y,Z

    22 MOV AH, 4CH

    23 INT 21H

    24 CODE ENDS

    25 END BEGIN


    正确答案:第一个参数减第二个参数差的绝对值送第三个参数
    第一个参数减第二个参数,差的绝对值送第三个参数

  • 第14题:

    执行下列程序段后,DATA1单元的值为( ) DATA1 DB 10H,20H DATA2 DB 30H,40H MOV AX,WORD PTR DATA1 CMP AX,WORD PTR DATA2 JA L MOV BX,WORD PTR DATA2 MOV WORD PTR DATA2,AX MOV WORD PTR DATA1,BX L:HLT

    A.40H

    B.30H

    C.20H

    D.10H


    正确答案:B
    解析:在本题中,DATA1中存放的是字节10H,20H。DATA2中存放的是字节30H,40H。执行MOVAX,WORDPTRDATA1后,DATA1的内容转换为字的形式。下一条是把DATA2转换为字后进行比较。JA的作用是两个无符号数比较,高于或不低于不等于转移。在本题中20H30H,所以不转移,继续执行下面的指令,下面的指令的作用是把DATA1的值和DATA2的值换过来,所以DATA1的值是30H。

  • 第15题:

    下面的程序用来从键盘重复接收一字符送BUFF开始的单元,直到接收到行结束

    标志ODH。在程序中填空,保证其正确运行。

    1 DATA SEGMENT

    2 BUFF DW 128 DUP(0)

    3 DATA ENDS

    4 CODE SGEMENT

    5 ASSUME CS:CODE,DS:DATA

    6 BEGIN: MOV AX, DATA

    7 MOV DS, AX

    8 LEA SI, BUFF

    9 GCH: MOV AH, 01H

    10 INT 21H

    11 MOV [SI], AL

    12 INC SI

    13 __________

    14 JNE GCH

    15 MOV AH, 4CH

    16 INT 21H

    17 CODE ENDS

    18 END BEGIN


    正确答案:CMP ALODH
    CMP AL,ODH 解析:由题意可知,跳出循环的标志为0DH,应在循环段中加一个比较指令,判断结束条件,即在空处用指令CMP AL,0DH。

  • 第16题:

    有汇编程序段如下 CODES SEGMENT ASSUME CS:CODES START: MOV CX, 30 XOR AX, AX MOV BX, 1 AGAIN: ADD AX, BX INC BX LOOP AGAIN CODES ENDS END START 程序执行后,AX和BX的内容分别是

    A.465,31

    B.465,30

    C.434,31

    D.434,30


    正确答案:A

  • 第17题:

    下面是将内存一字节数据高四位和低四位互换并放回原位置的程序,其中有7个语句中有错误,请找出错误的地方并改正。 第1行 DATA SEGMENT 第2行 DD1 DB 23H 第3行 DATA ENDM 第4行 CODE SEGMENT 第5行 ASSUME CS:CODE,DS:DATA 第6行 START MOV AX,DATA 第7行 MOV DS,AX 第8行 LEA SI,OFFSET DD1;取变量DD1的偏移地址 第9行 MOV AL,[SI] 第10行 MOV DL,4;设置移位次数 第11行 RCR AL,CL;循环右移4次 第12行 MOV [SI],AL 第13行 MOV AH,4CH 第14行 INT 21H 第15行 CODE ENDP;代码段结束 第16行 END BEGIN


    正确答案: (1)第3行DATAENDS
    (2)第6行START:MOVAX,DATA
    (3)第8行LEASI,DD1
    (4)第10行MOVCL,4
    (5)第11行RORAL,CL
    (6)第15行CODEENDS
    (7)第16行ENDSTART

  • 第18题:

    阅读下列程序段,注释指令中属性分离符的功能。 DATA    SEGMENT       A       DW   20,100,-60H      B       DB  ‘ABCDEFG ’  DATA    ENDS             ┆  ①MOV AX,  SEG B  ②MOV BX,  OFFSET B ③MOV CX,  TYPE A  ④MOV  DX ,  TYPE B 


    正确答案: ①段首址DATA→AX
    ②变量B的偏移量6→BX
    ③2→CX
    ④1→DX

  • 第19题:

    阅读下面的程序,回答问题 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 找出一条指令代替指令“SUB AL,30H”,使程序功能不变。


    正确答案: 用指令“AND AL,0FH”代替指令“SUB AL,30H”,程序功能不变。

  • 第20题:

    阅读下面的程序,回答问题 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个字节单元中的内容是什么?


    正确答案: 程序执行后,从BCD开始的N个字节单元中的内容是1234。

  • 第21题:

    已经定义数据段如下: DATASEGMENT NUM=56 X DB NUM Y DB 27 Z DW 148 DATAENDS 指出下列指令中的错误: (1)MOV Y,X (2)MOV BL,04B8H (3)MOV AL,Z (4)MOV [BX],3 (5)MOV [BX],[DI] (6)MOV DS,DATA (7)MOV NUM,AX (8)MOV ES,DS (9)MOV AX,FLAGS (10)MOV CS,AX


    正确答案: (1)指令MOV Y,X同时出现了两个存储器操作数。
    (2)指令MOV BL,04B8H操作数类型不匹配(04B8H是16位立即数,BL是8位寄存器)。
    (3)指令MOV AL,Z操作数类型不匹配(Z是16位操作数,BL是8位寄存器)。
    (4)指令MOV [BX],3操作数类型不能确定。
    (5)指令MOV [BX],[DI]出现了两个存储器操作数。
    (6)指令MOV DS,DATA不能把立即数装入段寄存器。
    (7)指令MOV NUM,AX立即数不能用作目的操作数。
    (8)指令MOV ES,DS不能在段寄存器之间直接传输。
    (9)指令MOV AX,FLAGS中,FLAGS寄存器只能隐含在少量指令中使用。
    (10)指令MOV CS,AX中,CS寄存器不能用作目的操作数。

  • 第22题:

    问答题
    阅读下列程序段,注释指令中计算符LENGTA的取值.  DATA     SEGMENT  A        DW     10 DUP(?), 1234H,  20 DUP(?)  B        DB    ‘ABCDEF’,6 DUP(?)  C        DW     10, 20 DPU(?)  D        DW     5 DUP(3 DUP(2),5)  DATA     ENDS                ┆  ①       MOV     AX, LENGTH  A  ②       MOV     BX ,LENGTH  B  ③       MOV     CX ,LENGTH  C  ④       MOV    DX ,LENGTH  D

    正确答案: ①10→AX;
    ②1→BX;
    ③1→CX;
    ④5→ DX.
    解析: 暂无解析

  • 第23题:

    填空题
    初一5班共64人,已知每个学生的数学成绩存放在SCODE开始的单元中,求其平均成绩,并放在PJCD单元。试填写下面程序段。 DATA SEGMENT SCODE DB 68, 95, 76,…. PJCD DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AX,O MOV CX, 30 MOV SI,() ADD1:ADD AL() JNC() INC() NEXT:INC() LOOP() MOV CL,6 SHR(),CL MOV PJCD,() MOV AH,4CH INT 21H CODE ENDS END START

    正确答案: OFFSEFSCODE,[SI],NEXT,AH,SI,ADD1,AX,AL
    解析: 暂无解析

  • 第24题:

    问答题
    阅读下列程序段,指出①~④ 条语句操作的结果,并分析其中有错误的语句。 DATA   SEGMENT  V1     DB     5  V2     EQU    10 DATA   ENDS           ①     INC    V1  ②     INC    V2  ③     MOV    AX, V2  ④     INC    AX

    正确答案: ①(V1)+1=5+1=6→V1;
    ②错误语句,因为变量V2为立即操作数;
    ③10→AX;
    ④(AX)+1=10+1=11→AX,但V2并未改变。
    解析: 暂无解析