在外部RAM中BLOCK开始的单元中有一数据块,数据长度为LEN,试编程统计其中的正数、负数和零的个数分别存入内部RAM

题目
问答题
在外部RAM中BLOCK开始的单元中有一数据块,数据长度为LEN,试编程统计其中的正数、负数和零的个数分别存入内部RAM的Pcount、Mcoun和Zcount单元。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

内部报酬率法是根据内部报酬率的大小来决策的一种方法,在决策中,应当选择内部报酬率较高的那种方案,一般有多种算法,它们是()

  • A、取得使净现值为零的方程左端取正数的最大IRR数值和使得净现值为零的方程取负数的最小IRR数值,这两个数值相差1%,再用插值法得到内部报酬率
  • B、取得使净现值为零的方程左端取正数的最大IRR数值和使得净现值为零的方程取负数的最小IRR数值,这两个数值相差1%,再用线图法得到内部报酬率
  • C、取得使净现值为零的方程左端取正数的最大IRR数值和使得净现值为零的方程取负数的最小IRR数值,这两个数值相差1%,再用模拟法得到内部报酬率
  • D、取得使净现值为零的方程左端取正数的最大IRR数值和使得净现值为零的方程取负数的最小IRR数值,这两个数值相差1%,再取二者平均得到内部报酬率
  • E、取得使净现值为零的方程左端取正数的最大IRR数值和使得净现值为零的方程取负数的最小IRR数值,这两个数值相差1%,再取二者较小者得到内部报酬率

正确答案:A,B

第2题:

操作系统把刚输入的数据或程序存入RAM中,为防止信息丢失,用户在关机前,应先将信息保存到ROM中。


正确答案:错误

第3题:

编写完整程序,统计数据段中以变量BUFFER为起始地址50个存储单元中的有符号数,负数与正数的个数,将统计出来的负数个数送到DL寄存器中,正数的个数送到DH寄存器中。


参考答案:DATAS SEGMENT
BUFFER DB 50 DUP (?)
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX, DATAS
MOV DS, AX
XOR DX, DX
LEA SI, BUFFER
MOV CX,50
L1: MOV AL,[SI]
CMP AL,0
JG L2
JL L3
JMP L4
L2: INC DH
JMP L4
L3:INC DL
JMP L4
L4: INC SI
DEC CX
LOOP L1
MOV AH,4CH
INT 21H
CODES END
END START

第4题:

试编写一程序,将外部数据区DATA1单元开始的50个单节数逐一依次移动到内部RAM中DATA2单元开始的数据区中。


正确答案: > MCS51
1  ORG 0H
2  DATA1 EQU #1000H
3  DATA2 EQU #30H
4  LEN EQU #10H
0000  901000 5  MOV DPTR,DATA1
0003  7830      6  MOV R0,DATA2
0005  7910      7  MOV R1,LEN
0007  E0        8 LOOP: MOVX A,@DPTR
0008  F6        9  MOV @R0,A
0009  A3        10  INC DPTR
000A  08        11  INC R0
000B  D9FA      12  DJNZ R1,LOOP
13 END

第5题:

某RAM芯片的存储容量为1024×8位,该芯片的外部引脚应有几条地址线?几条数据线?若已知某RAM芯片引脚中有13条地址线,8条数据线,那么该芯片的存储容量是多少?


正确答案:该芯片的外部引脚应有10条地址线,8条数据线。
RAM芯片引脚中有13条地址线,8条数据线,那么该芯片的存储容量是8K×8位。

第6题:

在外部RAM中BLOCK开始的单元中有一数据块,数据长度为LEN,试编程统计其中的正数、负数和零的个数分别存入内部RAM的Pcount、Mcoun和Zcount单元。


正确答案: M.CS51
>                 1  ORG 0H
2  LEN EQU #10 ;  数据块长度
3  PCOUNT EQU #30H
4  MCOUNT EQU #31H
5  ZCOUNT EQU #32H
6  BLOCK EQU #40H
0000  7840      7  MOV R0,BLOCK ; BLOCK首地址
0002  790A      8  MOV R1,LEN
0004  E6        9 LOOP: MOV A,@R0
0005  C3        10  CLR C
0006  B40004    11  CJNE A,#0H,SULT1
0009  0532      12  INC 32H
000B  8009      13  SJMP SULT2
000D  33        14 SULT1: RLC A;     移出符号位以判断正负!
000E  4004      15  JC NEG
0010  0530      16  INC 30H
0012  8002      17  SJMP SULT2
0014  0531      18 NEG:// INC 31H
0016  08        19 SULT2: INC R0
0017  D9EB      20 DJNZ R1,LOOP

第7题:

申报统计:正数发票.负数发票.正数发票废票.负数发票废票.空白发票废票清单导出数据库中相关数据


正确答案:正确

第8题:

统计数据块中正数和负数个数(设有7个数,分别为-23,57,82,-27,-19,0,-8),要求写出完整程序框架。


参考答案:DATAS SEGMENT
BUF DB -23,57,82,-27,-19,0,-8
CNT EQU $-BUF
Z DB 0
F DB 0
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
MOV CX,CNT
MOV BX,OFFSET BUF ;
L1:MOV AL,[BX]
CMP AL,0
JG L2;
JL L3 ;
JMP NEXT
L2:INC Z
JMP NEXT
L3:INC F
;JMP NEXT
NEXT:INC BX
DEC CX
JNZ L1
MOV AH,4CH
INT 21H
CODES ENDS
END START

第9题:

在内部RAM的BLOCK开始的单元中有一无符号数据块,数据长度为LEN。试编程求其中最大的数并存入MAX中。


正确答案: M.CS51
1  ORG 0H
2  LEN EQU #10 ;数据块长度
3  MAX EQU #40H
0000  7830      4  MOV R0,#30H ; BLOCK首地址
0002  790A      5  MOV R1,LEN
0004  19        6  DEC R1 ; 循环次数
0005  C3        7  CLR C
0006  E6        8 LOOP: MOV A,@R0
0007  08        9  INC R0
0008  96        10  SUBB A,@R0
0009  4002      11  JC EXCHANG
000B  8002      12  SJMP NEXT
000D  86F0      13 EXCHANG:// MOV B,@R0
000F  C3        14 NEXT: CLR C
0010  D9F4      15  DJNZ R1,LOOP
0012  85F040    16
M.OV 40H,B ;   MAX单元     17  END

第10题:

试编写程序,将内部RAM单元中DATA1开始的20个单字节数依次与DATA2单元为起始地址的20个单字节数据进行交换。


正确答案: >   1  DATA1 EQU #30H
2  DATA2 EQU #50H
3  LEN EQU #16
4  ORG 0H
0000  7830      5  MOV R0,DATA1
0002  7950      6  MOV R1,DATA2
0004  7A10      7  MOV R2,LEN
0006  E6        8 EXC:// MOV A,@R0
0007  C7        9  XCH A,@R1
0008  F6        10  MOV @R0,A
0009  08        11  INC R0
000A  09        12  INC R1
000B  DAF9      13  DJNZ R2,EXC
14 END