c52单片机求余 单片机求模求余

游戏测评 2025-02-21 13:16:58

单片机中,用C语言123怎么对10取整和求余数啊,123/10 和123%10 程序直接跑乱了

首先定义123放在整型变量中:例

c52单片机求余 单片机求模求余c52单片机求余 单片机求模求余


c52单片机求余 单片机求模求余


#include

#define uint unsigned int

uint aa;

uint bb;

main()

{aa=123/10;

bb=123%10;

}应该是没有问题的!

在c语言中a求余

下次把题目更细分一下,标明单片机,这样分类就不会转让语言类。进入这个的应该都是学c的,不是学单片机的,我学过单片机,但是忘的不多了

我试着分析一下功能:

#include "stc.h"

#include "hjc52.h"

#include "delay.h"

int a;

int b;

it DU=P2^0;

it WE=P2^1;

void Timer() ///定时 在这个程序中有什么用?????很久没有弄,忘了。感觉没有用到?

{TMOD|=0x01;

TH0=0x3c;

TL0=0xb0;

TR0=1;

}void main()

{unsigned int SMG[10]={0x3f,0x6,0x5b,0x4f,0x66,0x6d,0x7d,0x7,0x7f,0x6f}; //表示数字

hjc52_init();//HL-1/HJ-3G/HJ-C52主板初始化函数

a=1;

b=0;

EA=1;

EX0=1;

EX1=1;

IT0=1;

IT1=1;

while(1)

{DU=1; //p2_0 控制

P0=SMG[b]; //给数字导p0 端口

DU=0; //断开

WE=1; //这里应该是用于保持吧????

P0=0xfe;

WE=0;

while(a); //等待中断

DU=1;

P0=SMG[b];

DU=0;

WE=1;

P0=0xfe;

WE=0;

while(~a);

}}

void Init_Key0() interrupt 0 //加

{b++;

if(b>9)

b=0;

a=~a;

}void Init_Key1() interrupt 2 //减

{b--;

if(b<0)

b=9;

a=~a;

}一开始有数据吗?

C语言中的求余和整除

填空:

0%2=0

1%2=1

2%2=0

3&2=1

4%2=0

0/2=0

1/2=0

2/2=1

3/2=1

4/2=2

C语言中的求余和整除的计算是如何定义的

:求余是指点一个数除以另一个数,不够除的部分就是余数,就是求余的结果.

整除就是一个数除以另一个数,刚刚好的倍数,这里没有四舍五入,不够一倍的都将舍去.

0,1,0,1,0,0,0,1,1,2

求余就是%,比如1%2的话,就剩1,3%2的话也是余1啊,整除的理解就是看前面的

7/(除以)2=3...1(余数)

7/2=3,7%2=1

C语言里的求余运算是怎么算的,举例说明

求余符号“%”比如“i=52%10”运算结束i=2,就是这么算的!在C语言中拆分多位数字一般这样用!比如把321这个数拆出百位实为个位分别放在hc1,hc2,hc3中就可以hc3=321%10;hc3=1;因为321除以10商=32余数为1

hc2=321/10;hc2=32;因为321除以10商=32

hc2=hc2%10;hc2=2;因为32除以10余数为2

hc1=321/100;

单片机取余函数是怎么回事,具了例子说明一下。

例如:

int i,j,k;

j=i/10;

k=i%10;

如i=78,则j=7,k=8;k就是i除以10的余数

比如 8%3=2;10=0;3%2=1;3%4=3;就是求余数这么简单 不要想多了

单片机汇编程序中 两字节 除 单字节 求 商 和 余数怎么做?能给个程序吗?

ORG 0000H

MOV R0, #80H

MOV R1, #31H

MOV R2, #94H

CALL R01_R2 ;R0R1 / R2 ---> R3...R1

;8031H / 94H = DDH ... 6DH

SJMP $

;---------------------------------

R01_R2: ;R0R1 / R2 ---> R3...R1

INC R0

MOV R3, #0

LOOP0:

CLR C

MOV A, R1

SUBB A, R2

JC LOOP2

LOOP1:

MOV R1, A

INC R3

SJMP LOOP0

LOOP2:

DJNZ R0, LOOP1

RET

;---------------------------------

END

最普遍有效的方法是通过减法循环来得到除法结果:

mov r3,#0

loop:

mov a,r1

subb a,r2

inc r3

jnc loop

djnz r0, loop

mov b,r2

div a,b

add a,r3

mov r0,a

mov r1,b

end

就这样了,有什么疑问可以联系我。

版权声明:本文内容由互联。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发 836084111@qq.com 邮箱删除。