我这还有份设计报告,这里粘贴不了,要的话说一声便是。
data segment
Week db 'SunMonTusWedThuFriSta'
inter_Seg dw
inter_offset dw
MESS0 DB '$'
MESS1 DB ' Show the time of System $'
MESS2 DB ' Day of system $'
MESS3 DB ' $'
MESS4 DB ' Time of system $'
MESS5 DB ' QQ:137824675 $'
MESS6 DB 'Press enter key to quit!$'
prog_len equ $-start
data ends
sta segment stack
dw 100h dup()
top label word
sta ends
code segment
assume cs:code,ds:data,ss:sta
main proc far
start:
mov ax,sta
mov ss,ax
lea sp,top
mov ax,data
mov ds,ax
;-------------取 中断型号 1ch ,的中断向量-----------
mov al,1ch
mov ah,35h
int 21h
mov ax,es
mov inter_Seg,ax
mov inter_offset, bx
;-------------重置 中断型号 1ch ,的中断向量----------
push ds
mov ax, seg showtime
mov ds,ax
mov dx, showtime
mov al,1ch
mov ah,25h
int 21h
pop ds
;--------------设置中断屏蔽位,开中断-----------------
in al,21h
and al,0feh ; 1111 1110b
out 21h,al
sti
lp:
MOV AH,0
INT 16H ;查询键盘
CMP AX,1C0DH ;看右enter键是否被按下
JNE lp ;若没有按下,则跳回lp
;mov ax, prog_len
;-------------------结束并驻留内存---------------
mov ax,3100h
mov dx,((prog_len + 15)/16) ;驻留区,16的整数倍
int 21h
mov ax,4c00h
int 21h
main endp
;----------------------------------
showtime proc far
push ds
push ax
push cx
push dx
mov ax,data
mov ds,ax
sti
MOV BX,0
MOV DH,04H
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS1
MOV AH,9H
INT 21H ;显示MESS1
MOV BX,0
MOV DH,05H
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS2
MOV AH,9H
INT 21H ;显示MESS2
MOV BX,0
MOV DH,06H
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS3
MOV AH,9H
INT 21H ;显示MESS3
MOV BX,0
MOV DH,08H
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS0
MOV AH,9H
INT 21H ;显示MESS0
MOV BX,0
MOV DH,0AH
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS3
MOV AH,9H
INT 21H ;显示MESS3
MOV BX,0
MOV DH,0BH
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS4
MOV AH,9H
INT 21H ;显示MESS4
MOV BX,0
MOV DH,0CH
MOV DL,16H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS5
MOV AH,9H
INT 21H ;显示MESS5
MOV BX,0
MOV DH,0EH
MOV DL,19H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕指定位置(DH,DL分别设置行列) 调整提示信息的位置
LEA DX,MESS6
MOV AH,9H
INT 21H ;显示MESS6
;--------------------显示日期------------------
MOV BX,0
MOV DH,06H
MOV DL,21H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕中央(DH,DL分别设置行列)
MOV AH,2AH
INT 21H
;----------------
push ax
mov ax,cx
call far ptr disp1
;--------
push dx
mov dl,'-'
mov ah,02
int 21h
pop dx
mov al,dh
call far ptr disp
mov dh,dl
mov dl,'-'
mov ah,02h
int 21h
mov al,dh
call far ptr disp
mov cx,2
lp0:
mov dl,' '
mov ah,02
int 21h
loop lp0
pop ax
call far ptr disp2
;--------------------显示时间------------------
MOV BX,0
MOV DH,0AH
MOV DL,25H
MOV AH,2H
INT 10H ;调用BIOS中断把光标置屏幕中央(DH,DL分别设置行列)
MOV AH,2CH
INT 21H ;调用DOS中断查询系统时间
MOV AL,CH ;取得的小时数放到AL,为调用子程序准备入口参数
CALL FAR PTR DISP ;调用子程序,显示小时数
MOV DL,':'
MOV AH,02H
INT 21H ;显示小时与分钟间的“:”
MOV AL,CL ;取得的分钟数放到AL,为调用子程序准备入口参数
CALL FAR PTR DISP ;调用子程序,显示分钟数
MOV DL,':' ;显示分钟与秒间的“:”
MOV AH,02H
INT 21H
MOV AL,DH ;取得的秒数放到AL,为调用子程序准备入口参数
CALL FAR PTR DISP ;调用子程序,显示秒数
exit:
cli
pop dx
pop cx
pop ax
pop ds
iret
showtime endp
;子程序名:disp
;子程序功能:将两位十六进制数转换为十进制数显示出来(这里只显示十位和个位)
;入口参数:AL存放要转换的十六进制数
;出口参数:无
disp proc far
push ax
push cx
push dx
mov cl,100
mov ah,0
div cl
mov al,ah ;余数放到AL,最高位(百位)不必显示
mov ah,0
mov cl,10
div cl
mov dh,ah
mov dl,al
add dl,48
mov ah,02h
int 21h ;display sec
mov dl,dh
add dl,48
mov ah,02h
int 21h ;display 3
pop dx
pop cx
pop ax
ret
disp endp
;---------------------------------------------------
;子程序名:disp1
;子程序功能:将4位十六进制数转换为十进制数显示出来
;入口参数:AL存放要转换的十六进制数
;出口参数:无
disp1 proc far
push ax;
push bx
push cx
push dx;
and dx,00
mov cx,4
mov bx,10
lp1:
div bx
push dx
sub dx,dx
loop lp1
mov cx,4
lp2:
pop dx
add dl,30h
mov ah,02
int 21h
loop lp2
pop dx
pop cx
pop bx
pop ax
ret
disp1 endp
;-----------完成年份的输出------------------
;------------------显示星期(前三个英文字母)------------------
;子程序名:disp2
;子程序功能:输出当天是星期几(英语单词的前三个字母)
;入口参数:al(0——6)(星期日——六 )存放要转换的星期数
;出口参数:无
disp2 proc far
push ax
push bx
push dx
push cx
push si
and ah,00
mov cl,3
mul cl
lea si,week
add si,ax
lp3:
mov dl,[si]
inc si
mov ah,02
int 21h
loop lp3
pop si
pop cx
pop dx
pop bx
pop ax
ret
disp2 endp
code ends
end start
1、首先电脑下载“豌豆荚”,手机插上数据线连接电脑,使豌豆荚与手机保持连接状态,注意:手机上的USB调试要打开(设置-应用-开发) 2、下载A60tools 3、将连接电脑的手机拔下数据线,关机,然后同时按住调节音量
纯水机是一种家用净水装置,能有效去除自来水中的重金属、细菌、病毒、有机物和无机物。经该装置净化后的水清澈见底,甘甜醇厚。此外,纯水机还具有生产优质水、运行安全、稳定可靠、 *** 作简单、占地面积小的优点。该装置适用于家庭、酒店、医院等行业的日常饮用水净化。
在诸多反渗透产品中,立升的M8B作为新品各方面表现的都想当出色。M8B身材很薄,容易放置于厨下空间,800G大通量拥有2L/min稳定的大流量,2:1实打实的高水效比,对比很多1:1水效的型号,已经有了巨大提升,也远高于国家一级水效标准的60%。
立升纯水机M8B创新的地方也不少。它配支持两种出水方式,包括生活净水和直饮吹水,纯净水直饮、冲奶、煲汤,生活净水淘米、洗果蔬、洗碗筷,这种双出水设计不但节省RO滤芯,而且还节省水资源。
传统的滤芯必须借助相关工具进行拆装,非常刁的麻烦。没有相关经验的,很难独立更换。而这款机器采用了简约的更换方式,只需要打开机器面板,就能轻松更换滤芯,非常的方便快捷。
立升纯水机M8B拥有小程序胡乱,用户从立升净水小程序上远程 *** 控,实时监测,家里的水质、滤芯寿命及用水信息一目了然。在家则可以通过水龙头或者机箱上的显示屏进行滤芯,水质和售后的信息获取,非常方便。
//=================================[说明]=======================================/
//学生成绩管理
//文件名:maincpp
//------!!!!!!---------BOF-[程序代码开始]-------------------
#include<iostream>
#include<string>
using namespace std;
//=============<开始定义结构体>===================================================
struct combox
{
int num;
int mark;
string name;
combox next;
};
//=============<结束定义结构体>===================================================
//=============<开始定义Commonbox类>==============================================
//-----类体开始------------------------
class Commonbox
{
private:
combox head;
void Swap(combox ,combox ); //交换两个combox变量的数据域
void Print(combox ); //输出一combox指定的记录
combox Find(int); //查找条例条件的记录,并返回该记录的指针
public:
Commonbox()
{
head=NULL;
}
int ListCount(); //统计当前链表的记录总数,返回一个整数
void AddItem(int num, string name, int mark); //添加一条记录到表尾
void RemoveItem(int); //删除一条指定的记录
void List(); //列出当前链表中的所有记录
void Sort(); //对当前链表进行排序
void Search(int); //在当前链表查找指定记录并输出
float Average(); //计算平均成绩
};
//-----类体结束------------------------
//-----类成员函数开始----------------------------------
int Commonbox::ListCount() //统计当前链表的记录总数,返回一个整数
{
if (! head)return 0;
combox p=head;
int n=0;
while (p)
{
n++;
p=p->next;
}
return n;
}
void Commonbox::AddItem(int num, string name, int mark) //添加一条记录到表尾
{
if (! head)
{
head=new combox;
head->mark=mark;
head->num=num;
head->name=name;
head->next=NULL;
return;
}
combox t=head;
while (t && t->num!=num)
t=t->next;
if (t)
{
cout<<" *** 作失败:学号为"<<num<<"的记录已经存在!"<<endl;
return;
}
combox p=head;
while (p->next)p=p->next;
combox p1=new combox;
p1->num=num;
p1->mark=mark;
p1->name=name;
p1->next=NULL;
p->next=p1;
return;
}
void Commonbox::RemoveItem(int num) //删除一条指定的记录
{
combox t=Find(num);
if (! t)return;
combox p=head;
//如果要删除的记录位于表头
if (head==t)
{
head=head->next;
delete p;
cout <<"成功删除学号为 "<<num<<" 的记录!"<<endl<<endl;
return;
}
while (p->next!=t)p=p->next;
combox p1=p->next;
p->next=p1->next;
delete p1;
cout <<"成功删除学号为 "<<num<<" 的记录!"<<endl<<endl;
return;
}
void Commonbox::Print(combox p) //输出一combox指定的记录
{
cout<<p->num<<"\t\t";
cout<<p->name<<"\t\t";
cout<<p->mark<<endl;
return;
}
void Commonbox::List() //列出当前链表中的所有记录
{
if (ListCount()==0)
{
cout <<"错误:当前的列表为空!"<<endl;
return;
}
combox p=head;
cout<<"共有记录:"<<ListCount()<<endl;
cout<<"学号\t\t姓名\t\t分数"<<endl;
while (p)
{
Print(p);
p=p->next;
}
cout <<endl;
return;
}
void Commonbox::Search(int num) //在当前链表查找指定记录并输出
{
cout <<"Searching"<<endl;
combox p=Find(num);
if (p)
{
cout<<"学号\t\t姓名\t\t分数"<<endl;
Print(p);
}
cout <<endl;
}
combox Commonbox::Find(int num)
{
if (ListCount()==0)
{
cout <<"错误:当前的列表为空!"<<endl;
return NULL;
}
combox p=head;
while (p)
{
if (p->num==num)break;
p=p->next;
}
if (! p)
{
cout <<"错误:找不到该记录!\n";
return NULL;
}
return p;
}
void Commonbox::Swap(combox p1, combox p2) //交换两个combox变量的数据域
{
combox temp=new combox;
temp->num=p1->num;
temp->mark=p1->mark;
temp->name=p1->name;
p1->num=p2->num;
p1->mark=p2->mark;
p1->name=p2->name;
p2->num=temp->num;
p2->mark=temp->mark;
p2->name=temp->name;
}
void Commonbox::Sort() //对当前链表进行排序
{
cout <<"Sorting"<<endl;
if (ListCount()<2) return;
combox temp=NULL,p=NULL,p1=NULL,p2=NULL,k=NULL;
int n=ListCount(),i,j;
p=head;
for (i=1;i<n;i++)
{
k=p;
p1=p->next;
for (j=0;j<n-i;j++)
{
if (k->num > p1->num)
{
k=p1;
}
p1=p1->next;
}
if (p!=k)Swap(k,p);
p=p->next;
}
cout <<"Complete successfully!"<<endl<<endl;
return;
}
float Commonbox::Average() //计算平均成绩
{
if (ListCount()==0)
{
cout <<"错误:当前的列表为空!"<<endl;
return -1;
}
int sum=0,n=0;
combox p=head;
while (p)
{
sum += p->mark;
p=p->next;
n++;
}
return float(sum)/n;
}
//-----类成员函数结束----------------------------------
//=============<结束定义Commonbox类>==============================================
Commonbox student; //定义全局变量
int Menu()
{
cout <<"===========[主选单:]==========="<<endl;
int n=1,select=-1;
cout <<n++<<"输入学生成绩;"<<endl<<endl;
cout <<n++<<"按学号排序;"<<endl<<endl;
cout <<n++<<"按学号查找记录;"<<endl<<endl;
cout <<n++<<"删除由学号指定的记录;"<<endl<<endl;
cout <<n++<<"列出所有记录;"<<endl<<endl;
cout <<n++<<"计算平均成绩;"<<endl<<endl;
cout <<"0退出;"<<endl<<endl;
cout <<"[请选择(输入相应数字)]:";
cin >>select;
return select;
}
char Exit() //返回一个字符患,用于确认退出
{
char s;
cout<<"确定要退出程序吗[Y/N]:";
cin >>s;
return s;
}
void Input(int num, string name, int mark) //输入学生信息
{
cout <<"请输入 学号 姓名 分数:";
cin >>num;
if (num==-1)return;
cin >>name>>mark;
return;
}
void AddNew() //增加记录
{
int num=0,mark=0;
string name="";
cout<<endl<<"当输入的学号为-1时表示结束输入"<<endl;
Input(&num, &name, &mark);
while (num!=-1)
{
studentAddItem(num,name,mark);
Input(&num, &name, &mark);
}
return;
}
void DoFind() //按学号查找
{
int num;
cout<<endl<<"当输入的学号为-1时表示结束输入"<<endl;
do
{
cout <<"请输入要查找的学生的学号: ";
cin>>num;
if (num==-1)continue;
studentSearch(num);
}
while (num!=-1);
return;
}
void DoDelete() //删除记录
{
cout<<endl<<"当输入的学号为-1时表示结束输入"<<endl;
int num;
do
{
cout <<"请输入要删除的学生的学号:";
cin>>num;
if (num==-1)continue;
studentRemoveItem(num);
}
while (num!=-1);
return;
}
void ShowAverage() //输出平均数
{
float avr=studentAverage();
if (avr>0)
{
cout<<"共有记录:\t"<<studentListCount()<<endl<<endl;
cout<<"平均成绩:\t"<<avr<<endl<<endl;
}
return;
}
//-------<主函数开始>-------
int main()
{
cout<<"Welcome!\n学生成绩管理系统\nVer 101\nBy FondBoy\n\n";
int select;
char s;
while (1)
{
select=Menu();
switch (select)
{
case 0: //退出程序
s=Exit();
if (s=='y' || s=='Y')return 0;
break;
case 1: //输入学生成绩
AddNew();
break;
case 2: //按学号排序
studentSort();
break;
case 3: //按学号查找记录
DoFind();
break;
case 4: //删除由学号指定的记录
DoDelete();
break;
case 5: //列出所有记录
studentList();
break;
case 6: //输出平均成绩
ShowAverage();
break;
default:
cout<<"无效输入!"<<endl;
}
}
return 0;
}
//-------<主函数结束>-------
//------!!!!!!---------EOF-[程序代码结束]-------------------
主要是图例的位置参数有错,程序可改为:
x = -pi:pi/20:pi;
plot(x,cos(x),'-ro',x,sin(x),'-b')
h = legend('cos x','sin x','Location','NW');
不仅可以摆脱受制于人的局面,更能大肆扩展品牌,官网程序布局设计至关重要。程序

2、微信小程序源码提取工具
不管是线下消费,还是线上消费,都讲究用户体验度,而html5企程序业网站建设程序同样也不例外。

3、微信小程序导航栏怎么做
设计404页时,尽量程序少用程序专业术语。你应该营造一种轻松幽默的氛围。

4、小程序图标
因为各种情报显示英程序特尔将会在12代酷睿处理程序器上对架构进行革命性的改变,万年14nm制程也将进化至10nm制程,自然在功耗以及性能上取得更加理想的进步。
5、小程序发布流程怎么弄
2、电商平台类程序关键词权威的电商平台以及一些有规模的垂直电商平台,都是电程序商网站需要研究的平台,如何有效挖掘这些平台的关键词对你是至关重要,
6、小程序商城导航图标
一、外卖配送APP开发需求概述用户对于外卖配送方面的程序需求度很高,对此,外卖配送APP开发就需要针对外卖方面来进行程序功能提供,
7、微信小程序ui设计规范
JBL CLIP 4便携蓝牙音箱评测:时尚造程序型 好音乐随身相伴提到蓝牙音箱,哈曼旗下JBL品牌,凭借出色的音质,以及不错的外形,
8、小程序底部导航栏样式
并且支持心率检测功程序能,该技术基于联想程序研究院尖端研究,通过光谱捕捉,
9、小程序右上角三个点叫什么
尽管苹果在第程序二季度没有受到芯片短缺的影响,但彭博社报道说,其129英寸的iPadP程序ro在5月21日推出时可能会出现供应短缺,原因是该设备使用的mini-LED显示屏生产遇到了问题。
4、网站推广设定seo程序优化是一程序个十分系统的工程项目,并不是一两句话就能说清晰的,而且seo优化涉及到的层面也很广,
以上就是关于高分求一汇编小程序,全部的内容,包括:高分求一汇编小程序,、root 联想a60怎么ro ot、反渗透纯水机哪个牌子最好等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)