资源描述:
《单片机指令合集.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、已知A=34H,R6=29H把R6的前4位和后4位交换MOVR6,#29HXCHAR6SWAPAXCHAR6把29H赋值给R6R6和A交换A的前后4位交换R6和A交换22H单元开始有一无符号数,长度存在20H单元,求出数块的最大值,并存21H单元。LP:NEXT:NEXT1:CLRAMOVR2,20HMOVR1,#22HCLRCSUBBA,@R1JNCNEXTMOVA,@R1SJMPNEXT1ADDA,@R1INCR1DJNER2LPMOV21H,ARET寄存器清0把20H(地址)赋值给R2把22H赋值给R1进位位清零A-R1没有进位跳转NEXT把R1里面的数赋值给A强
2、制跳转到NEXT1把R1里面的数赋值给AR1+1R2减一不为0跳转到LP把A赋值给21H执行计算1234H+0FE7H程序高4位存41H低4位存40HMOVA,#34HADDA,#0E7HMOV40H,AMOVA,#12HADDCA,#0FHMOV41H,A把A赋值34H把0E7H赋值给A把A赋值给40H把A赋值12HA加上0FH把A赋值给41H把8位2进制(0~255)转换成3位BCD码百位存储在21H十位个位存储在22H中MOVB,#64HDIVABMOV21H,AMOVA,#0AHXCHABDIVABSWAPAADDABMOV21H,A,把B赋值64HA除以B把A
3、(商)赋值给21H把0AH赋值给AA(10)B(余数)交换A除以BA的高四位和低四位交换(余数是两位数高4位是0000)A加B(余数)把A赋值给21H单字节BCD码减法21H里放被减数11H里放减数MOVR1,#21HMOVR0,#11HCLRCMOVA,#9AHSUBBA@R0ADDA@R1DAAMOV12HAR1赋值21HR0赋值11H进位位清零把9AH赋值给AA-@R0(求补码)A加上@R110进制调正把A赋值给12H有十个无符号的数由小到大排序(沉底)ROL:LP0:LP1:MOVR0,#10HMOVR2,#0AHMOVA,R0MOVR1,AMOVA,R2MOV
4、R5,ACLR00HDECR5MOVA,@R1MOVR3,AINCR1CLRCMOVA,@R1SUBBA,R3JNCLP1SETB00HMOVA,R3XCHA,@R1DECR1XCHA,@R1INCR1MOVA,@R1DJNZR5,LP0JB00H,ROL把10H赋值给R0把0AH赋值给R2把R0赋值给A把A赋值给R1把R2赋值给A把A赋值给R500H位清零R5减一把@R1赋值给A把A赋值给R3R1加1进位位清零把@R1赋值给AA减去R2没有进位位跳转LP1设定00H为1把R3赋值给AA与@R1交换R1减去1A与@R1交换R1加1把@R1赋值给A没有借位跳转到R500H
5、为1跳转ROL用P1口连续8次数据并作和后平均LP0:LP1:LP3:MOVR0,#00HMOVR1,#00HMOVR2,#08HMOVP1,#0FFHMOVA,P1ADDA,R1JNCLP1INCR0MOVR1,ADJNER2LP2MOVR2,#03HMOVA,R0RRCAMOVR0,AMOVA,R1RRCAMOVR1,ADJNZR2LP3把00H赋值给R0把00H赋值给R1把08H赋值给R2把0FFH赋值给P1把P1赋值给A把R1赋值给A没有进位跳转到LP1R0加1把A赋值给R1R2-1不为0跳转LP2把03H赋值给R2把R0赋值给A向右移动1位把A赋值给R0把R1
6、赋值给A向右移动1位把A赋值给R1R2减1不为0跳转到LP3设片外RAM2000H开始存有100个有符号的数。试统计这一个百符号数的正数负数0的数量LOOP:NO_ZERO:NO_NEGA:DOWNCLRAMOVR5,AMOVR6,AMOVR7,AMOVR2,#64HMOVDPTR,#2000HMOVXA,@DPTRJNENO_ZEROINCR5SJMPDOWNJNBANO_NEGAINCR6SJMPDOWNINCR7INCDPTRDJNZR2LOOPRET寄存器清零把A赋值给R5把A赋值给R6把A赋值给R7把64H赋值给R2把2000H赋值给DPTR把DPTR赋值给A
7、不等于0跳转NO_ZEROR5加1强制跳转DOWN首位为0跳转NO_NEGAR6加1强制跳转DOWNR7加1DPTR加1R2减一不为0跳转LOOP执行CD码变二进制BCDBML10TAFAMOVR7,#03HMOVR0,#43HMOVR3,#00HMOVA,@R0MOVR2,AMOVA,R2MOVB,#0AHMULABMOVR2,AMOVA,BXCHA,R3MOVB,#0AHMULABADD,A,R2MOVR3,ADECR0MOVA,@R0ADDA,R2MOVR2,AMOVA,R3ADDCA,#00HMOVR3,ADJNZR7,ML10R