一道单片机的题,求高手解答!!!

设有100个单字节有符号数,连续存放在以2100H为首地址的外部存储区中,试编程统计其中整数、负数、零的个数。结果按次序存于内部SRAM 30H、31H、32H中。
需要用汇编做,麻烦哪位高手解答一下,谢谢。

呵呵 你可以编写一个单循环程序去实现它 循环次数=100 数据指针初始值为2100H,初始时将
30H、31H、32H单元内容清零 好装统计的结果。
循环体: 将数据指针所指的片外数据存储器单元中的数据传送给累加器A,然后判断,如果是正数
则30H单元内容加1;如果是负数则31H单元内容加1;如果是0 则32H单元内容加1。
循环控制部分: 修改数据指针 指向下一个单元的数据,循环次数减1,如果不等于0则继续循环,否则结束。
呵呵 满意 就选满意回答
可以参考一下事例:
MOV R7,#100
MOV DPTR, #2100H
LL0: MOVX A,@DPTR
JNZ LL1
INC 32H
SJMP LL3
LL1: JNB ACC.7, LL2
INC 31H
SJMP LL3
LL2: INC 30H
LL3: INC DPTR
DJNZ R7, LL0
温馨提示:内容为网友见解,仅供参考
无其他回答

求高手解答单片机问题。
25、假定(SP)=40H,(39H)=30H,(40H)=60H。执行下列指令:--题目有错,39H、40H,不是连续的单元,不能当做本题目的已知条件。POP DPH ,POP DPL后,DPTR的内容为( ),SP的内容是( )。26、单片机的堆栈栈顶由( SP )来指示,复位时起位置在( 07H )单元。27、单片机内部...

单片机题目,求高手,谢谢
MOV DPTR, #0030H MOVX A, @DPTR MOV B, A INC DPTR MOVX A, @DPTR MUL AB MOV DPTR, #2000H MOVX @DPTR, A MOV DPTR, #0200H MOV A, B MOVX @DPTR, A END 2、要求从P1.6引脚输出频率为2000hz的方波,已知单片机晶振频率为12MHZ 选择T1 定时器 工作...

单片机问题,求高手详解!
1、答案:00H,LCALL调用把地址0221H放到堆栈中,先低后高,所以08H是00H,PC也会变化,这里就不说了 2、十进制变成二进制不能一位对应四位,那个是十六进制变成2进制的方法。。。

单片机作业求高手解答 ,,填空题
1. 在 MCS-51单片机外部扩展功能中,它可以提供地址线为( 16 )根,数据线为( 16 ) 根,可寻址的外部数据存储器容量为(64k ) ,可寻址的外部程序存储器容量为 ( 64k ) ,访问这两个存储体的控制信号分别为 ( ALE ) 和( EA )。2. 8051单片机的串口有4种工作方式,方式0...

求高手解答单片机
20理论上如此,但每个单片机肯定会有时钟的上限。21对 22不对,一个指令周期可以包含数个机器周期 23对的 24不对scon只是串口中断的控制寄存器。25不对,SP始终指向栈顶。26不对 都是64K 27不对,是一条查询外部存储器的指令 28对的 29不对,8155是并行接口芯片 30对 31对的,@Ri中i只能是0或...

单片机程序分析题求高手解答。。。
MOV A,#60H ;立即数寻址,所以(A)=60H MOV R0;#40H ;(R0)=40H MOV @R0,A ;间接寻址,将寄存器A存的值存入寄存器R0所指地址40H中,(40H)=60H MOV 41H,R0 ;直接寻址,将R0的值存入41H单元,(41H)=40H

是有关单片机的问题!!!
1.学习单片机首先要把MCU的内部功能单元,指令结构看熟看懂,这是一定要下工夫的,然后拿简单的程序范例来调试练习,再慢慢接触复杂点的程序范例,最后觉得很想练一下的时候,就自己动手写个简单的程序.2.千万不能心急,先练简单的,越简单的越好,练到自己迫不及待想接触复杂的程序的时候你就知道下一步该做...

单片机驱动继电器问题
你好:——★1、单片机通过光藕输出到三极管基极的电压较高,2K电阻明显太小,以致三极管基极电流偏大(24V减去光藕管子电压降0.5V,再减去三极管电压降0.5V,然后再除以2K,基极电流达到11.5mA!),这是三极管烧坏的原因。——★2、解决的方法非常简单:把基极偏置电阻(2K)改为33K即可。这时的基极...

单片机高手帮忙解答哈,初学者来请教,帮我解答一下问题
1、T1作为波特率发生器只能工作在方式2(即自动重装载模式),你所说的两个模式是不一个概念,一个是定时器工作模式,一个是串口工作模式。2、SMOD当然也可以设为1,为1时波特率加倍。

单片机程序问题 求大手解答 MOV TMOD,01H之类的为题。总共是3个问题...
ORG 0050H是定义主程序的存储位置从50H开始,因为前面有些地址是中断服务程序的入口,所以一般主程序存储时要跳过这个地址.06H=0000 0110B,即TMOD第2,3位的值为1,表示定时器T0,工作在计数方式,模式1

相似回答