题目内容 (请给出正确答案)
[主观题]

编制一个程序,其实现的功能为:计算10个带符号字节数据的绝对值之和(和为字型),并且找出绝对值最

编制一个程序,其实现的功能为:计算10个带符号字节数据的绝对值之和(和为字型),并且找出绝对值最小的数及其所在的偏移地址,将结果依次存入指定的内存区中,结果以0FH结束。

例如:

内存中有:23H, 14H,00H,08H,PEH, 87H,02H,01H,PPH,01H

结果为:BFH,00H,00H,02H,00H,0FH

部分程序已经给出,原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从 RESULT开始的内存单元存放, 由过程SAVE保存到文件OUTPUT.DAT中。

请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令也行,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。

[试题程序]

EXTRN LOAD:FAR,SAVE:FAR

N EQU 10

DSEG SEGMENT

SOURCE DB N DUP()

RESULT DB 6 DUP(0)

MIN DB ?

NAME0 DB 'INPUT.DAT',0

NAME1 DB 'OUTPUT.DAT',0

DSEG ENDS

SSEG EGMENT STACK

DB 256 DUP()

SSEG ENDS

CSEG SEGMENT

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

START PROC FAR

PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DSEG

MOV DS,AX

LEA DX,SOURCE

LEA SI,NAME0

MOV CX,N

CALL LOAD

; ******** BEGIN ***********

LEA SI,SOURCE

LEA DI,RESULT

MOV DX,SI

MOV CX,N-1

MOV AL,[SI]

SUB AX,0

JNS NEXT

NEG AL

NEXT: MOV MIN,AL

ADD [DI],AL

(1)

AGAIN: INC SI

MOV AL,[SI]

ADD AL,0

JNS NEXT1

(2)

NEXT1: ADD [DI],AL

(3)

CMP MIN,AL

JBE NEXT2

MOV MIN,AL

(4)

NEXT2: LOOP AGAIN

ADD DI,2

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“编制一个程序,其实现的功能为:计算10个带符号字节数据的绝对…”相关的问题

第1题

编制一个程序,其实现的功能为:内存中连续的10个无符号字节数,对其执行(X×7-5)÷8操作(X为内存中的

编制一个程序,其实现的功能为:内存中连续的10个无符号字节数,对其执行(X×7-5)÷8操作(X为内存中的数据,且X不等于0),将结果存入指定的内存区中。

例如:

内存中为:4FH,83H,34H…

则结果为:26H,40H,18H…

部分程序已经给出,原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从 RESULT开始的内存单元存放,由过程SAVE保存到文件OUTPUT.DAT中。

请填空BEGIN和END之间已给出的源程序使其完整,空缺处已经用横线标出,空缺处一般只需要一条指令,但采用功能相当的多条指令也可以,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。

[试题程序]

EXTRN LOAD:FAR,SAVE:FAR

N EQU 10

DSEG SEGMENT

SOURCE DB N DUP()

RESULT DB N DUP(0)

NAME0 DB 'INPUT.DAT',0

NAME2 DB 'OUTPUT.DAT',0

DSEG ENDS

SSEG SEGMENT STACK

DB 256 DUP()

SSEG ENDS

CSEG SEGMENT

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

START PROC FAR

PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DSEG

MOV DS,AX

LEA DX,SOURCE

LEA SI,NAME0

MOV CX,N

CALL LOAD

; ******** BEGIN ********

LEA SI,SOURCE

LEA DI,RESULT

MOV BX,N

AGAIN: MOV AL,[SI]

MOV DX,0

MOV DL,AL

AND AX, (1)

MOV CL,3

(2) AX,CL

(3)

SUB AX,5

MOV CL,3

(4) AX,CL

MOV [DI],AL

INC SI

INC DI

DEC BX

(5)

; ****+**** END ********

LEA DX,RESULT

LEA SI,NAME1

MOV CX,N

CALL SAVE

RET

START ENDP

CSEG ENDS

END START

点击查看答案

第2题

给定一个函数,其函数功能为:使10个整数按由小到大的顺序排列。在主函数中输入10个数,并输出结果。
使用VC6打开考生文件夹下的工程RevProj5。此工程包含一个源程序文件RevMain5.cpp,该程序实现上述功能。但此程序运行有问题。请找出错误的地方,改正后将此程序调试正确。

注意:不得删行或增行,也不得更改程序结构。

文件RevMain5.cpp中的程序清单如下:

//RevMain5.cpp

include<iostream>

include<iomanip>

using namespace std;

int main()

{

void sort(int array[],int n);

int data[10],*p,i;

cout<<"Input 10 numbers\n";

for (i=0; i<10; i++)

cin>>data [i];

cout<<"the origined array is:";

for (p=data;p<data+10;p++)

{

if((p-&data[0]) %5==0)

cout<<" \n";

cout<<setw (5) <<*p;

}

sort (data, 10);

cout<<"\n the present array is:";

for(p=data;p〈data+10;p++)

{

if((p-&data[0])%5==0) cout<<"\n";

cout<<setw (5)<<*p;

}

}

void sort(int array[],int n)

{

/* * * * * * * * *found * * * * * * * * * */

for(p1=array;p1<array+(n-1) ;p1++)

{

for (p2=p1+1 ;p2<array+n;p2++)

{

if (*p1>*p2)

{

/* * * * * * * * *found * * * * * * * * * */

temp=*p1; *p1=*p2; *p2=*p1;

}

}

}

}

点击查看答案

第3题

编制一个程序,其功能为:内存中以8位无符号数形式连续存放着10个数据,这数据来自于一个自动抄表系
统记录的10个用户某月天然气的使用量(立方米),天然气费计算公式如下(其中,X表示天然气用量,Y表示应交天然气费):

a)Y=X×80 X≤6

b)Y=X×120 6<X≤10

c)Y=X×160 X>10

计算每个用户需要交的天然气费,结果用字表示,并将结果存入指定单元。

例如:

用天然气量:05H,07H,12H……

天然气费: 0190H,0348H,0780H……

部分程序已经给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从RESULT开始的内存单元存放, 由过程SAVE保存到文件OUTPUT.DAT中。

请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令亦可,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。

[试题程序]

EXTRN LOAD:FAR,SAVE:FAR

N EQU 10

DSEG SEGMENT

SOURCE DB N DUP()

RESULT DW N DUP(0)

A DB 80

B DB 120

C DB 160

NAME0 DB 'INPUT.DAT',0

NAME1 DB 'OUTPUT.DAT',0

DSEG ENDS

SSEG SECMENT STACK

DB 256 DUP()

SSEG ENDS

CSEG SEGMENT

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

START PROC FAR

PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DSEG

MOV DS,AX

LEA DX,SOURCE

LEA SI,NAME0

MOV CX,N

CALL LOAD

; ******** BEGIN *********

LEA SI,SOURCE

LEA DI,RESULT

CLD

MOV CX,N

AGAIN: MOV AL,[SI]

CMP AL,6

JA (1)

(2)

JMP NEXT

LIMIT6:CMP AL,10

JA (3)

(4)

JMP NEXT

LIMIT10: (5)

NEXT: MOV [DI],AX

INC SI

ADD DI,2

LOOP AGAIN

; ******** END ********

LEA DX,RESULT

LEA SI,NAME1

MOV CX,N*2

CALL SAVE

RET

START ENDP

CSEG ENDS

END START

点击查看答案

第4题

窗体的load事件可以被用来实现的功能为()。

A.确定窗体的位置

B.从内存中清楚一个窗体

C.在程序启动时对属性和变量初始化

D.重画窗体

点击查看答案

第5题

(1)在考生文件夹下有一个工程文件sj3.vbp,相应的窗体文件为sj3.frm。其功能是在Text1文本框中输入
一个数N,单击命令按钮计算从0到N的所有素数的和,并在Text2中显示出来。运行程序如图1-3所示。

(1)在考生文件夹下有一个工程文件sj3.vbp,相应的窗体文件为sj3.frm。其功能是在Text

(1)在考生文件夹下有一个工程文件sj3.vbp,相应的窗体文件为sj3.frm。其功能是在Text

图1-3

要求:去掉程序中的注释符"‘",把程序中的"?"改为正确的内容, 使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。

(2)在考生文件夹下有工程文件sj4.vbp及窗体文件sj4.frm,该程序是不完整的,请在有"?"号的地方填入正确内容,然后删除"?"及代码前的所有注释符(即‘号),但不能修改其他部分。存盘时不得改变文件名和文件夹。

本题描述如下:

本程序的功能为当用户单击窗体上的命令按钮"输入"时,可以输入6个数值,随后程序对这6个数值进行升序排序,单击按钮"输出"则把大于平均值的数显示出来,程序运行时的窗体如图1-4所示。

(1)在考生文件夹下有一个工程文件sj3.vbp,相应的窗体文件为sj3.frm。其功能是在Text

图1-4

点击查看答案

第6题

下面是一个递归Java程序,其功能为()long Factorial(int n){if(1==n){ return 1;}else return n*F

下面是一个递归Java程序,其功能为 ()long Factorial(int n){ if(1==n){ return 1; } else return n*Factorial(n-1);}

A.求1-n的和

B.求2到n的和

C.求n的阶乘

D.求2-n的积

点击查看答案

第7题

下面是一个递归Java程序,其功能为()long Factorial(int n){if(1==n){return 1;}elsereturn n * F

下面是一个递归Java程序,其功能为 () long Factorial(int n){ if(1==n){ return 1; } else return n * Factorial (n-1); }

A.求1-n的和

B.求2到n的和

C.求n的阶乘

D.求2-n的积

点击查看答案

第8题

请补充完整下列程序:系统实现的功能为,上电复位后P1口所连接的一个共阳极数码管循环显示数字0-9 #include<reg51.h> Void delay () { Unsigned int i; For (i=0;i<10000;i++); } Void main () { Undigned char led[ ]={ }; Unsigned char k; While (1) { For (k=0;k<10;) { P1=_____________; K++; _______________; } } }
点击查看答案

第9题

请补充完整下列程序:系统实现的功能为,上电复位后P1口所连接的一个共阳极数码管循环显示数字0-9(注:程序中的字母都小写) #include<reg51.h> Void delay () { Unsigned int i; For (i=0;i<10000;i++); } Void main () { Undigned char led[ ]={ }; Unsigned char k; While (1) { For (k=0;k<10;) { P1=_____________; K++; _______________; } } }
点击查看答案

第10题

在考生文件夹内(C:\ylc)有一个工程文件ylc.vbp。在窗体上有一个文本框,名字为Text1,以及两个命令

在考生文件夹内(C:\ylc)有一个工程文件ylc.vbp。在窗体上有一个文本框,名字为Text1,以及两个命令按钮,名字分别为Command1和Command2,标题分别为Search和Save。还有一个函数过程Search(a),在程序中可以直接调用该函数,其功能为判断整型参数number是否为质数。如果是则返回True,否则返回False。编写一个事件过程,实现以下功能:运行时,在文本框内输入一个正整数。单击Search按钮后,找到小于该正整数的第一个素数,显示在 Text1中;单击“Save”,则把Text1中的计算结果存入考生文件夹下的out.txt文件中。程序运行后如图27所示。要求实现题目给出的功能,并将文件保存在考生文件夹下,工程文件名为 ylc.vbp。

在考生文件夹内(C:ylc)有一个工程文件ylc.vbp。在窗体上有一个文本框,名字为Text1,

点击查看答案
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
温馨提示
每个试题只能免费做一次,如需多次做题,请购买搜题卡
立即购买
稍后再说
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
赏学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反赏学吧购买须知被冻结。您可在“赏学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
赏学吧
点击打开微信