设有100个有符号数,连续存放在2000H为首的地址的存储中
来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 09:03:30
求出n个数的和,然后依次减去数组里所以的数最后+(-1)就是少的那个数了
movax,34hax
8086汇编语言入下,已运行过,没有错误.DATASEGMENT\x05BUF1DB41H\x05BUF2DB22H;自己设定两个数DATAENDSCODESEGMENT\x05ASSUMECS:CO
有两处错误:1、LETSI,DATA应该是LEASI,DATA2、EVEN是保留字,不可在程序中当标号使用完整的程序如下:;.com文件格式codesegmentmainprocfarassumecs
;CLRAMOVR1,AMOV30H,AMOVR0,#30HMOVR2,#64LOOP:MOVXA,@R0ADDA,R1MOVR1,AJNCNEXTINC30HNEXTlINCR0DJNZR2,LOO
1.6*8*6=2882.1000+(5*8+7)*6=1000+(5+7*6)*6=12823.1000+(1*8+4)*6=10724.1000+(4+7*6)*6=1276
DATASEGMENTBLOCKDB48H,6AH,35H,0C9H,12H,93HCONEQU$-BLOCKMAXDBDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA
;MOVTPTR,#2000HMOVR2,#100MOVR3,#0MOVR4,#0MOVR5,#0LOOP:MOVA,@DPTRJZZZZJBACC.7,FUINCR3;正数个数JMPNEXTFU:I
5个连续偶数,M-4,M-2,M,M+2,M+4这五个数的和=M-4,M-2,M,M+2,M+4=5M
设中间的数为X于是九个连续奇数为:X-8X-6X-4X-2XX+2X+4X+6X+8因为最大的数与最小的数的和是38所以X-8+(X+8)=38于是2X=38答案X=19所以中间数为19
汇编语言DSEGSEGMENTSAVEDB3DUP(?)NUMDW100DUP(?)DSEGENDSCSEGSEGMENTASSUMECS:CSEG,DS:DSEGSTART:MOVAX,DSEGMO
汇编程序如下:ZeroEQU42H;零的统计NegetiveEQU41H;负数的统计PositiveEQU40H;正数的统计CountEQU100;比较个数ORG0000HLJMPMAINORG004
datasegmentorg2000hd1db120dup(0);120随便写的,只要大于101就行.前100是已知数,后一个是写入结果的dataendscodesegmentassumecs:cod
是什么类型的如果int的signedint*a;a=2000h;然后用a[i]来判断就行了
tem=a[M];a[M]=a[M-1];a[M-1]=tem;//你自己看这个代码嘛要跟第一个对换不应该是tem=a[M];a[M]=a[0];a[0]=tem;
这题有错183-(1+2+3+4+5)不是6的整数倍
m-2+m+m+2=3m再问:为什么?再答:因为这三个偶数是连续的第二个是m所以第一个是m-2(连续偶数大小相隔2)第三个偶数是m+2所以和就是m-2+m+m+2=3m了
分别是a-1和a+1
a-1a+1
设四个连续偶数为x,x+2,x+4,x+6x+x+2+x+4-100=x+62x=100x=5050+2=5250+4=5450+6=56答:四个数为50,52,54,56再问:最大的数是多少