编一个完整程序.将10个无符号数排列组合符号后,存放在原来区域中

求高手帮设计一汇编程序,找10个有符号数中最大数,要有用户键盘输入,屏幕显示输出功能 — 编程爱好者社区
主题:求高手帮设计一汇编程序,找10个有符号数中最大数,要有用户键盘输入,屏幕显示输出功能
[专家分:0]
谢谢各位高手了先~
本帖地址:&
回复列表 (共1个回复)
[专家分:0]
data segment
&&str db 10 dup(?)
&&mess db'please input numbers'
stack segment para stack'stack'
&&dw dup 100 dup(?)
stack ends
code segment
&&assume cs:code,ds:data,ss:stack
start:mov ax,data
&&&&&&mov ds,ax
&&&&&&lea dx,mess
&&&&&&mov ah,09h
&&&&&&int 21h
&&&&&&mov cx,10
input: mov si,offset str
&&&&&&&mov ah,01h
&&&&&&&int 21h
&&&&&&&mov byte ptr[si],al
&&&&&&&inc si
&&&&&&&loop input
select: mov cx,10
&&&&&&&&lea si str
&&&&&&&&mov al,byte ptr[si]
compare:inc si
&&&&&&&&cmp al,byte ptr[si]
&&&&&&&&jle next
&&&&&&&&mov al,byte ptr[si]
&&next: loop compare
&&&&&&&&mov dl,al
&&&&&&&&mov ah,02h
&&&&&&&&int 21h
&&&&&end start
您尚未登录,请登录后再回复。微机原理及应用习题105道14
上亿文档资料,等你来发现
微机原理及应用习题105道14
《微机原理与应用》习题;1.求ADDRI开始单元中连续存放的两个双字数据;2.在一个首地址为STR、长度为N的字符串中查找;3.将两位十六进制数转换成ASCII码,并送屏幕;4.使用分支结构实现将1位十六进制数转换成ASC;5.一个32位数存放在以数据段的BUF单元开始的;6.用查表法将1位十六进制数转换成相应的ASCI;7.将数据段中首地址为ADDR、长度
《微机原理与应用》习题1. 求ADDRI开始单元中连续存放的两个双字数据之和,将结果存放在ADDR2开始的单元,并将结果在显示器上显示出来。(假定和不超过双字)2. 在一个首地址为STR、长度为N的字符串中查找“空格”,找到则向DL中送1,否则向DL中送-1。3. 将两位十六进制数转换成ASCII码,并送屏幕显示,要求使用顺序结构实现。4. 使用分支结构实现将1位十六进制数转换成ASCII码。假设需要转换的十六进制数已存放在AL的低4位上,转换结果仍存放到AL中。5. 一个32位数存放在以数据段的BUF单元开始的位置。编写子程序统计该数中含“1”的个数,并将其结果存入RSLT字节单元。6. 用查表法将1位十六进制数转换成相应的ASCII码,并将结果送屏幕显示。7. 将数据段中首地址为ADDR、长度为N的一组数据加1,并送回原处。8. 将数据段ADDR1地址处的200个字节数据,传送到数据段地址为ADDR2处。9. 编写程序,已知有某字串BUF1的首址为2000H,并且数据段与附加段重合。欲从BUF1处开始将20个字数据顺序传送至BUF2处。10. 有First和Second开始的2个长度相等的字符串,交换2个字符串的内容。11. 编写程序能够完成矩阵A与向量B相乘,结果存放在向量C中。?1423??,向量B?2457T。 2159已知:矩阵A????????8765???a11提示:对于??a21??a31a12a22a324a13a23a33a14?a24????b1b2a34??b3b4???c1c2Tc3? T计算公式为:Ci??aijbj,j?1i?1,2,3;汇编语言程序采用双循环结构。12. 假设在内存BUF为首地址的数据区中,有50个字节的无符号数,编一程序能够找出数据块中的最大者,并把它送至MAX单元中。13. 编写程序,给一串字符加上奇校验位,采用堆栈传递参数。14. 编写程序,分别将M1、M2、M3中两个压缩型BCD码求和,并将结果保存。15. 编写程序,求ARRAY开始的100个带符号字节数据的绝对值,结果放在Result开始的100个字节中。16. 查找字符串String中是否有“A”这个字符,如果有“A”,显示“Yes”,结束程序,若不含“A”则显示“No”,结束程序。17. 编程把BUF开始的10个正数升序排序,结果放在Result中。18. 假设从内存BUF单元起有若干学生成绩,成绩以“*”结束。按照100~90为优、89~75为中等、74~60及格、60以下为不及格,编写一程序,完成统计各分数段学生人数。19. 编写一个过程,完成统计DX中“1”的个数,并将结果送CX中。20. 一个8位带符号二进制数X存放在内存单元BUF中,试根据下列函数关系编写程序求Y值,并将结果存入RESULT单元。??1X?0?Y??0X?0?1X?0?21. 编写程序对在数据段BUF1地址起存放一串字符个数进行统计,串结束标志为-1,并将统计的结果放到CX中。22. 编写一个完整的汇编程序,把50个字节数组中的正数、负数、零挑选出来,分别将正数、负数存入正数、负数数组,并计算其中正数、负数和零数据的个数,存入内存变量中。23. 编写一个完整的汇编程序,统计数据段中存放的15个带符号的字数据(首地址TABLE)中正数、负数和零的个数,分别将个数存放在PLUS、MINUS和ZERO单元,并将正数、负数和零的个数在微机屏幕上以十六进制数的形式显示出来。24. 编写一个完整的汇编程序,自BUF开始的内存缓冲区中有N (N≤255)个字节为带符号的二进制数。要求把该数组中的正数、负数分开。正数放在PLADR开始的内存缓冲区中,正数的个数放在PLNUM单元中。负数放在NGADR开始的内存缓冲区中,负数的个数放在NGNUM单元中。25. 编写一个完整的汇编程序,统计以DATA1为首址的数据存储器中存放的一个数据块(以FFH为结束符)的长度(即字节数),不包括结束符FFH,且长度小于256,将其存于CONT单元中。26. 编写一个完整的汇编程序,在数据存储器中有一数据块,其起始地址在FIRST(低字节)和FIRST+1(高字节)单元,数据块长度在LEN单元且不为0。要求统计该数据块中正偶数和负奇数的个数,并将统计结果分别存放在PUNIT和NUNIT单元。27. 编写一个完整的汇编程序,已知某应用系统规定:5个单字符命令A~E的命令处理程序入口地址分别为PGMA、PGMB、PGMC、PGMD和PGME,输入命令的ASCII字符存放在累加器中。编制程序段的功能为:如果累加器中的内容为合法命令字符A~E之一,则控制转入相应命令处理程序的入口;否则转入出错处理程序入口ERR。28. 编写一个完整的汇编程序,从8000H开始的存储区中存放着80名同学某科目的成绩(0~100分),试编程统计及格(60分以上)和不及格人数,并将统计结果存放在选定的寄存器中。29. 编写程序,能够实现将( DX,AX )中的(32位)内容向右逻辑移动4位。30. 编写程序完成统计数据段从4500H开始单元存放的100个单字节带符号数中负数和正数的个数,将结果分别放于DX和BX中。31. 编写程序完成将首地址为TABLE的数组中存放的100个8位无符号二进制数中,最小数和最大数找出来,分别存放到MIN和MAX单元中。32. 假设有一个8位无符号二进制数X存放在内存单元为ADDR中,Y与X的关系表示在下面的函数中,编写一个程序,能够求出Y的值,并将结果存入RESULT单元。?X2?60?X?10H?Y??2X?810H?X?50H?28X?50H?33. 有3个不带符号字节数X、Y、Z存放在内存WP开始的单元中,编写出完整的汇编源程序,能够计算(X×YCZ)/Z的值。(X、Y、Z数可任意假设)34. 若在自1000H单元开始有一个100个数的数据块,要把它传送到自2000H开始的存储区中去。35. 在自0500H单元开始,存有100个数。要求把它传送到1000H开始的存储区中,但在传送过程中要检查数的值,遇到第一个零就停止传送。36. 在自0500H单元开始,存有100个数。要求把它传送到1000H开始的存储区中,但在传送过程中检查数的值,零不传送,不是零则传送到目的区。37. 在自0500H单元开始,存有100个数,把数据块中的正数传送到自1000H开始的存储区。38. 在自0500H单元开始,存有100个数,把数据块中的正数传送到自1000H开始的存储区;而把其中的负数,传送到自1100H开始的存储区。且分别统计正数和负数的个数,分别存入1200H和1201H单元中。39. 自0200H单元开始,有100个无符号数,编一个程序求这100个数的和(用8位数运算指令),把和放在0264H和0265H单元(和用两字节表示),且高位在0265H单元。40. 若在0500H单元中有一个数x:(1) 利用加法指令把它乘2,且送回原存储单元 (假定x×2后仍为一个字节);(2) x×4;(3) x×10 (假定x×10≤255)。41. 若在存储器中有两个数a和b(它们所在地址用符号表示,下同),编一程序实现a×10+b
(a×10以及“和”用两字节表示)。42. 若在存储器中有数a、b、c、d(它们连续存放),编一个程序实现((a×10+b)×10+c)×10+d
(和小于等于65535)43. 在0200H单元和020AH单元开始,存放两个各为10个字节的二进制数(地址最低处放的是最低字节),求它们的和,且把和放在0214H开始的存储单元中。44. 若在0500H单元有一个数x,把此数的前四位变0,后四位维持不变,送回同一单元。45. 若在0500H单元有一个数x,把此数的前四位变“1”,后四位维持不变,送回同一单元。46. 把x的最低位变“1”,高7位不变,送至0600H单元。47. 若在0500H单元有一个数x,把此数的前四位变反,后四位维持不变,送回同一单元。48. 把x的最高位取反,后7位不变,把结果按二进制显示,并送至0600H单元。49. 若从0200H单元开始有100个数,编一个程序检查这些数,正数保持不变,负数取补后送至0300H单元开始的存储区。50. 若在0200H和0201H单元中有一个双字节数,编一个程序对它们求补。51. 若在0200H和0201H单元中有两个正数,编一个程序比较它们的大小,把较小的数放在0201H单元中。52. 若在0200H和0201H单元中有两个无符号数,编一个程序比较它们的大小,把较大的数放在0201H单元中。53. 若自0500H单元开始有1000个带符号数,把它们的最小值找出来,放在1000H单元中。54. 若自1000H单元开始有1000个无符号数,把它们的最大值找出来,放在2000H单元中。55. 在0200H单元中有一个数x,利用移位和相加的办法,使x×10(假定x×10&255)后送回原单元。56. 在0200H和0201H单元中,存有一个两字节数(高位在后),编一个程序把它们整个右移一位。57. 在自BUFFER单元开始,放有一个数据块,BUFFER和BUFFER+1单元中放的是数据的长度,自BUFFER+2开始存放数据,每一单元放的是两位BCD码,把它们分别转换为ASCII码,放到自BLOCK开始的存储区中(低四位BCD码转换成的ASCII码放在地址低的单元),而BLOCK和BLOCK+1放转换成的ASCII码的长度。58. 在自BUFFER单元开始,放有一个数据块,BUFFER和BUFFER+1单元中放的是数据块的长度,自BUFFER+2开始存放的是以ASCII码表示的16进制数码(即0~9,A~F),把它们转换为16进制数码,放在同一单元中。59. 若在某存储区中已输入4个以ASCII码表示的16进制数码(高位在前),把它们转换为二进制数放入BX寄存器对中,并显示在屏幕上。60. 若自STRING单元开始存放一个字符串(以字符空格引导,以$结尾),编一个程序统计这个字符串的长度(忽略前导空格和结尾的$字符)。61. 在自STRI1和STRI2开始各有一个由10个字符组成的字符串,检查这两个字符串是否相等,在STFLAG单元中建立一个标志(相等为00,不等为FF)。62. 编一个程序,统计一个八位二进制数中的为“1”的位的个数。63. 编一个程序,使放在DATA及DATA+1单元的两个八位带符号数相乘,乘积放在DATA+2及DATA+3单元中(高位在后)。64. 编一个程序,使放在DATA(被除数)及DATA+1(除数)的两个八位带符号数相除,商放在DATA+2单元,余数放在DATA+3单元中。65. 编一个程序,使放在DATA和DATA+1的两字节无符号数与在DATA+2及DATA+3中的无符号数相乘,乘积接着原来的数存放(高位在后)。66. 编一个程序,两个16位无符号数相除,商和余数接着原来的数存放(先放商,高位在后)。67. 把在BX寄存器对中的16位带符号二进制数转换为十进制数,且把符号位及各位十进制码转换为相应的ASCII码,放到自DATA开始的7个存储单元中(高位在前),最后填以空格。68. 若自STRING开始有一个字符串(以‘#’号作为字符串的结束标志),编一个程序,查找此字符串中有没有字符$,有多少个$(放在NUMBER单元中,没有$则其为0,否则即为$的个数);且把每一个$字符所存放的地址,放到自POINTR开始的连续的存储单元中。69. 把数据块传送程序编为一个子程序MOVE,源地址、目的地址和传送的字节数放在自ADDR开始的存储单元中。主程序调用子程序实现上述功能。70. 把八位无符号数乘法程序编为一个子程序,被乘数、乘数和乘积放在自DATA开始的存储单元中。主程序调用子程序实现上述功能。71. 编写子程序。将AL中的二进制数转换成对应的BCD码(置于AL中)返回。若AL中的二进制数大于99,则置CF为1,AL不变,返回。主程序调用子程序实现上述功能。72. 编写子程序。将AL中的(两位)压缩BCD码转换成对应的二进制数(置于AL中)返回。主程序调用子程序实现上述功能。73. 编写子程序。将AX中的二进制数转换成对应的(4位压缩)BCD码(置于AX中)返回。若AX中的二进制数大于9999,则置CF为1,AX不变,返回。主程序调用子程序实现上述功能。74. 编写子程序。将AX中的(4位压缩)BCD码转换成对应的二进制数(置于AX中)返回。主程序调用子程序实现上述功能。包含各类专业文献、高等教育、应用写作文书、中学教育、各类资格考试、微机原理及应用习题105道14等内容。 
 美橙培训学校 2013 中级经济基础最新 105 道试题及答案解析 一、单项选择题(共 70 题,每题 1 分。每题的备选项中,只有 1 个最符合题意) 第 1 题我国...  C语言上机105道题,上机考试满分必备_IT认证_资格考试/认证_教育专区。计算机二级考试上机题库,满分必备C 语言上机 105 道题,上机考试满分必备第 1 套: 给定程序...  2013中级经济基础最新105道试题及答案解析_财会/金融考试_资格考试/认证_教育专区。2013 中级经济基础最新 105 道试题 一、单项选择题(共 70 题,每题 1 分。...  微机原理题(贾清泉) 10页 1财富值 微机原理模拟试题 10页 2财富值 北京大学微机原理考试试题... 10页 免费 微机原理及应用习题105道 8页 5财富值搜...  技能比赛参考复习资料105道题目_从业资格考试_资格考试...人本原理的基本内容和特点为尊重人、依靠人、为了...用于控制感染所不可缺少的药物,也是应用最为广泛的...  问题分析与决策教程试卷105道满分题_企业管理_经管营销_专业资料。时代光华,含30题满分内部考试,5套试券单选题 1. 问题分析的作用在于:3 分已自动评判 ? ? ?...  湖南2013安全员试题105道真题_企业管理_经管营销_专业资料。2013年湖南省建筑业企业专业技术管理人员:安全员考试真:105题2013 年湖南安全员考试 1、根据《建筑法》...  宁波大学OJ系统前105道C语言题目及答案精讲_工学_高等教育_教育专区。C++资料复习 C++资料复习 1000 整数输入输出练习 Description 从键盘输入任意两个整数,再向屏幕...  有一道图表题,有一个饼图,一个表。 年的什么东西是:1992 年到 ...105. 已知 x,y,15,25 的平均值为 22,比较 x,y 平均值与 22 的大小 A...问题补充&&
本页链接:
gzgzlxg&6-13 08:31
猜你感兴趣
服务声明: 信息来源于互联网,不保证内容的可靠性、真实性及准确性,仅供参考,版权归原作者所有!Copyright &
Powered by当前位置: >
> 新手,vb排列大小的问题用vb编写一个程序随机产生10个二位数,放入数组a中,从中选出一个最大的和
新手,vb排列大小的问题用vb编写一个程序随机产生10个二位数,放入数组a中,从中选出一个最大的和
justin2374 & at
新手,vb排列大小的问题用vb编写一个程序随机产生10个二位数,放入数组a中,从中选出一个最大的和最小的数显示出来,但是有点小问题,请看 &
我正在做这样的练习题:
我的源代码是这样的
Private & Sub & Command1_Click()
Dim & b & As & Integer
Dim & d & As & Integer
Dim & a(10) & As & Integer
d & = & a(0)
c & = & a(0)
For & i & = & 0 & To & 9
a(i) & = & Rnd() & * & 100
If & a(i) & &
& d & Then
d & = & a(i)
If & a(i) &
& & c & Then
c & = & a(i)
&所产生的数 & & & & a(i)
&最大的数是 & & & & d
&最小的数是 & & & & c
这样运行,最大的数是可以出来的,但是最小的数是:0,这个我也想了,因为c=a(0)
这个值是空值,认为是0,这样,进行循环,判断,只能是0,那么,怎么办,才能完成这个作业?
*****************************************************************************
欢迎使用希赛论坛专用阅读器 : 希赛 Reader(附全部源代码)
最新版本:
justinkuo & &
& & (0)(0)Private Sub Command1_Click()
Dim c As Integer
Dim d As Integer
Dim a(10) As Integer
d = 0 : c = 100
dim i as integer
For i = 0 To 9
a(i) = Rnd() * 100
d Then d = a(i)
& c Then c = a(i)
& & (i+1) &
& 个数: & & a(i)
&最大的数是 & & d
&最小的数是 & & c
实际上,没有必要使用数组
Private Sub Command1_Click()
Dim c As Integer
Dim d As Integer
Dim a As Integer
d = 0 : c = 100
dim i as integer
For i = 0 To 9
a = Rnd() * 100
d Then d = a
& c Then c = a
& & (i+1) &
& 个数: & & a
&最大的数是 & & d
&最小的数是 & & c
JustinOpenGL & &
& & (0)(0)
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&湘教QS2-164&&增值电信业务经营许可证湘B2-有10个无符号整数(8位)试编一程序,把其中的奇数和偶数分开存放,要求程序有完整的格式且上机调试通过_百度知道
有10个无符号整数(8位)试编一程序,把其中的奇数和偶数分开存放,要求程序有完整的格式且上机调试通过
求助大神,汇编作业
汇编语言程序设计的作业
您的回答被采纳后将获得:
系统奖励20(财富值+经验值)+难题奖励30(财富值+经验值)
我有更好的答案
&nbsp分开放,&&AL;&&&&nbsp:&&&1;&ENDSCODE&&&&&INC&&&EVE&nbsp:&&DI;;AL&nbsp,&&&JZ&&LOOP&&&&10个数据&AX;&nbsp,&&nbsp,&&&&DINEXT;AL;&db&为零就是偶数&nbsp,&&&nbsp,&&db&&&&nbsp,&MOV&&&MOV&&DUP&nbsp:DATASTART;AX&SEGMENT&&&&&&&nbsp,&&&SEGMENT&BUFF&:&&各自预定10个空间&DS;AX;&EVE&OU&&&nbsp,&&[SI];INT&&SI;&&3;ENDS&&&AL&NEXTOU;&(0)&LPEXIT;MOV&9;DUP&MOV&&(0)DATA&[DI];;&&nbsp,&4C00H&nbsp,&&&db&&&&&nbsp,&&&nbsp,DS;BX&LEA&&&&&&nbsp,&0&&&&nbsp,&&&BX;&&nbsp,&&CS;BUFF&&LEA&&nbsp,&&2;ODD&&5;&nbsp,&;&ODD&6;&&&nbsp,&INC&&MOV&JMP&ASSUME&&&&nbsp:CODE;INC&LEA&&&nbsp,&&&&TEST&&END&&DATA&&&&&&&&4;&&&&SI&[BX]&&&10LP;&&&&nbsp:&判断最末位&&&&1&10&10&MOV&&&CX:&nbsp,&&&&7;&&21HCODE&&&8?DATA&&MOV&nbsp,没有指定放在何处;&nbsp
一看就知道是南昌大学的
同学你是南昌大学的吗?
其他类似问题
为您推荐:
无符号整数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 个人档案存放在哪里 的文章

 

随机推荐