2019年10月11日 星期五

3.Keil C

3.Keil C 幫我們寫好
程式:#include <reg51.h>  vs c語言 #include <stdio.h>
//幫您宣告
P0=0x80 有相對的記憶體以十六進位表示,它定義定reg51.h,我們直接拿來用他的代碼即可
P1=0x90
P2=0xA0
一、變數宣告aa大家都要用用全域變數
delay(int d)
{
  變數宣告bb
  ...
}
main()
{
  變數宣告cc先宣告完才能用
  ...
delay(5);
...
}
二、變數宣告
char :沒有正負號  unsigned char 0~255
        有號數 -128~127
int  :沒有正負號  unsigned int 0~65535
       有號數 -32768~32767
       short int:2Byte
       long int :4Byte
float
sbit:定義一個bit
P0 0~7指使用某幾個bit 例如2為spk
bit 0~7控制習慣用16進制表示(0x 或0X都可)例0x28最大到0xff
10進位:直接寫123、25
八進位0123//0代表8進制
例1001 0010只要四個一割
visual c++ 例:12h
sbit spk=P0^2;//熟悉的英文字
P1 0~7 可當輸出(cpu把資料送出去)、輸入(外面把資料送到cpu)
P2
P3
例:spk=1;//把1送出去
spk=0//把0送出去
輸入if(spk==0)我們做什麼處理、判斷(memory)
if(spk==1)我們做什麼處理


if條件判斷
if(條件式)
{
x=1;//超過一行用大括號括起來
y=2;
}
if()
 x=1;
二選一
if(條件式)//若條件成立
{
 敘述1;
}
else//否則
{
 敘述2;
}

for迴圈
for(1定初值;2條件判斷(不成立才跳出來);4變化量)
{
  3敘述;
}
例:累加器1+2+....+100
sum=0;
for(i=1;i<=100;i++)//i=i+1
 sum=sum+i;
nested for loop
for(i=1;i<=10;)//外圈做一次,內loop做十次
{
  for(j=1;j<=10;)
 {

 }
}
例:for(;沒寫永遠成立;)
{
  if( )break;//強迫跑出來
}

沒有留言:

張貼留言

algorithm

 #include <iostream> #include <string.h> using namespace std; int main(int argc, char** argv)  { for(int j=2;j<=100;j++)//j...