ex10.c

来自「单片机C语言应用100例光盘全部C语言源程序」· C语言 代码 · 共 17 行

C
17
字号
//实例10:用P0、P1口显示乘法运算结果
#include<reg51.h> //包含单片机寄存器的头文件
void main(void)  
{
  unsigned char m,n;
  unsigned int s;
  m=64;
  n=71;
  s=m*n;       //s=64*71=4544,需要16位二进制数表示,高8位送P1口,低8位送P0口
               //由于4544=17*256+192=H3*16*16*16+H2*16*16+H1*16+H0
					//两边同除以256,可得17+192/256=H3*16+H2+(H1*16+H0)/256
					//因此,高8位16进制数H3*16+H2必然等于17,即4544除以256的商
					//低8位16进制数H1*16+H0必然等于192,即4544除以256的余数
             
  P1=s/256;     //高8位送P1口 ,P1=17=11H=0001 0001B, P1.0和P1.4口灭,其余亮
  P0=s%256;     //低8位送P0口 , P3=192=c0H=1100 0000B,P3.1,P3.6,P3.7口灭,其余亮
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?