導航:首頁 > 軟體知識 > 程序流程圖中的key代表什麼

程序流程圖中的key代表什麼

發布時間:2022-12-25 11:41:37

① 構成程序流程圖的基本符號有那些,代表的含義是什麼

看圖,
第一個是流程,順序結構就是它;
第二個是判斷,判斷屬於分支結果,相當於if或swich等
第三個是數據,從各種方式輸入/輸出數據
第四個是開始或終結符,表示程序開始和結束
這幾個就是最基本的
箭頭的意思就是流程線,程序按這個順序執行

② C語言中 key是什麼意思呀 以及Key_dec==0時什麼意思

#include<reg51.h>
#include<intrins.h>
#include<math.h>

#define uchar unsigned char
#define uint unsigned int
#define S_RST DS_RST=1
#define C_RST DS_RST=0
#define S_CLK DS_CLK=1
#define C_CLK DS_CLK=0
#define Write_Disable RW_DS1302(0x8e,0x80) //防寫
#define Write_Enable RW_DS1302(0x8e,0x00) //允許寫入

sbit SET = P1^5; //設置按鍵
sbit ADD = P1^4; //調整加
sbit DEC = P1^6; //調整減
#define RdefineT1 TH1=0;TL1=0;TR1=0;a=0; //初始化超時檢測

//#define Delay2us() _nop_();_nop_(); //延時2us,每nop 1us
//#define Delay8us() _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

#define ReDetectTime 20 //設置重復檢測次次數,超出次數則超時

//ds18b20命令
#define SkipROM 0xCC
#define MatchROM 0x55
#define ReadROM 0x33
#define SearchROM 0xF0
#define AlarmSearch 0xEC

#define Convert 0x44 //啟動溫度轉換
#define WriteScr 0x4E
#define ReadScr 0xBE
#define CopyScr 0x48
#define RecallEE 0xB8
#define ReadPower 0xB4

#define md collect_time[0]&0x0f
#define mg (collect_time[0]&0x70)/16
#define fd collect_time[1]&0x0f
#define fg (collect_time[1]&0x70)/16
#define sd collect_time[2]&0x0f
#define sg (collect_time[2]&0x30)/16

sbit DS_RST = P1^2; //DS復位端
sbit DS_CLK = P1^0; //SCLK端
sbit DS_IO = P1^1; //IO端
sbit DS18B20 = P1^3; //溫度感測器介面

bit keyboard,flash,STA=1;
uchar choose,a;
uchar collect_time[3]=;//定義變數秒分時
uchar collect_temperature[2] = ;
uchar num[10] = ;
//七段數碼管顯示的段碼
uchar display[8] = ;

void delay(uint i)
{
uint k;
while(i--)
{
for(k=0;k<120;k++)
}
}

void Dat_Int(void)//數據初始化
{
P0=0xff;
P1=0xff;
P2=0xff;
choose=0;
flash=1;
}

void Time01_Int(void)
{
TMOD = 0x12; //定時器0為8位自動重載定時采樣,定時器1為16位超時檢測處理
TCON = 0x00;
TH0 = 0x60;
TL0 = 0x60;
TR0 = 1;

IE = 0x0a; //允許定時器0、1中斷
IP = 0x00;
}

/********************************************************
* *
* DS18B20溫度感測器程序段 *
* *
********************************************************/
/***********11微秒延時函數**********/
//
void delayus(uint t)
{
for(;t>0;t--);
}

/***********18B20復位函數**********/
void ow_reset(void)
{
char presence=1;
while(presence)
{
while(presence)
{
DS18B20 = 1;_nop_();_nop_();
DS18B20 = 0;
delayus(50); // 550us
DS18B20 = 1;
delayus(6); // 66us
presence=DS18B20; // presence=0繼續下一步
}
delayus(45); //延時500us
presence = ~DS18B20;
}
DS18B20 = 1;
}

/**********18B20寫命令函數*********/
//向 1-WIRE 匯流排上寫一個位元組
void write_byte(uchar val)
{
uchar i;
for (i=8; i>0; i--) //
{
DS18B20 = 1;_nop_();_nop_();
DS18B20 = 0;_nop_();_nop_();_nop_();_nop_();_nop_();//5us
DS18B20 = val&0x01; //最低位移出
delayus(6); //66us
val=val/2; //右移一位
}
DS18B20 = 1;
delayus(1);
}
//
/*********18B20讀1個位元組函數********/
//從匯流排上讀取一個位元組
uchar read_byte(void)
{
uchar i;
uchar value = 0;
for (i=8;i>0;i--)
{
DS18B20 = 1;_nop_();_nop_();
value>>=1;
DS18B20 = 0; //
_nop_();_nop_();_nop_();_nop_(); //4us
DS18B20 = 1;_nop_();_nop_();_nop_();_nop_(); //4us
if(DS18B20)value|=0x80;
delayus(6); //66us
}
DS18B20 = 1;
return(value);
}
//
/***********讀出溫度函數**********/
//
void Ds18b20_ReadEE(void)
{
ow_reset();
write_byte(SkipROM); // Skip ROM
write_byte(Convert); // 發轉換命令
ow_reset(); //匯流排復位
write_byte(SkipROM); // 發Skip ROM命令
write_byte(ReadScr); // 發讀命令
collect_temperature[0]=read_byte(); //溫度低8位
collect_temperature[1]=read_byte(); //溫度高8位
}

/********************************************************
* *
* DS1302時鍾晶元程序段 *
* *
********************************************************/
void DS1302_InputByte(uchar byte) //往DS1302寫入1Byte數據
{
uchar i;
uchar temp;
temp = byte;
for(i=8; i>0; i--)
{
DS_IO = temp&0x01;
S_CLK;
C_CLK;
temp = temp >> 1;
}
}

uchar DS1302_OutputByte(void) //從DS1302讀取1Byte數據
{
uchar i;
uchar temp=0;

for(i=0; i<8;i++)
{
C_CLK;
if(DS_IO!=0) temp|=(1<<i);
S_CLK;
}
return(temp);
}

void RW_DS1302(uchar reg, uchar byte)//向DS1302寄存器寫數據
{
C_RST;
C_CLK;
S_RST;
DS1302_InputByte(reg);
DS1302_InputByte(byte);
S_CLK;
C_RST;
}

uchar Read_DS1302(uchar reg)//從DS1302寄存器讀數據
{
uchar byte;
C_RST;
C_CLK;
S_RST;
DS1302_InputByte(reg);
byte = DS1302_OutputByte();
S_CLK;
C_RST;
return(byte);
}

void GetTime_DS1302(uchar *ucCurtime) //讀取DS1302當前時間
{

ucCurtime[0] = Read_DS1302(0x81);//格式為: 秒 分 時
ucCurtime[1] = Read_DS1302(0x83);
ucCurtime[2] = Read_DS1302(0x85);
}

void Set_Time(uchar *receive) //寫時間
{
Write_Enable; //控制命令,允許寫操作

RW_DS1302(0x80,receive[0]);
RW_DS1302(0x82,receive[1]);
RW_DS1302(0x84,receive[2]);

Write_Disable; // 控制命令,防寫
}

/********************************************************
* *
* 數碼管顯示程序段 *
* *
********************************************************/
void deal(void)//送顯前的數據處理
{uint timer2;
uint lstemp;
timer2++;

if(STA)

if(flash)//用於閃動效果的控制的
{
display[0] = num[sg];
display[1] = num[sd];
display[2] = num[fg];
display[3] = num[fd];
display[4] = num[mg];
display[5] = num[md];
}
else
{switch(choose)
{
case 1:display[0]=0;break;
case 2:display[1]=0;break;
case 3:display[2]=0;break;
case 4:display[3]=0;break;
case 5:display[4]=0;break;
case 6:display[5]=0;break;
}
}
if(timer2==3000)//間斷性獲取溫度
{
timer2=0;
if(STA)
{TR0=0;
Ds18b20_ReadEE();
TR0=1;
}
}
if(collect_temperature[1]>127)
{
collect_temperature[0]=255-collect_temperature[0];
collect_temperature[1]=255-collect_temperature[1];
}
lstemp=((collect_temperature[0])>>4)|((collect_temperature[1])<<4);

display[6] = num[(uchar)((lstemp)/10)];
display[7] = num[(uchar)((lstemp)%10)];

}

/********************************************************
* *
* 按鍵控製程序段 *
* *
********************************************************/

void Scan(void)
{

if(SET==0&&keyboard==1) //檢測設置鍵有無按下,並進行相應操作
{
if(SET==0&&keyboard==1)
{ RdefineT1; //超時檢測初始化
choose++;

while(SET==0);
if(choose==7)
{TR0=0;
Set_Time(collect_time);
TR0=1;
STA=1; //設置完畢,重新開始採集時間
choose=0;
}
}
}

if(choose) //只有在時間調整時,加減按鍵才有作用
{
if(ADD==0&&keyboard==1) //檢測加調整鍵有無按下,並進行相應操作
{
if(ADD==0&&keyboard==1)
{ RdefineT1; //超時檢測初始化a=0
TR0=0;
switch (choose)
{
case 1 :if(sg==2)
collect_time[2] = collect_time[2]&0x0f;
else
break;
case 2 :if((sg<2)&&(sd==9))
collect_time[2] &= 0x30;
if((sg>=2)&&(sd==3))
collect_time[2] &= 0x30;
else
break;
case 3: if(fg==5)
collect_time[1] &= 0x0f;
else
break;
case 4: if(fd==9)
collect_time[1] &= 0xf0;
else
break;
case 5: if(mg==5)
collect_time[0] &= 0x0f;
else
break;
case 6: if(md==9)
collect_time[0] &= 0xf0;
else
break;
}
TR0=1;
while(ADD==0);
}
}

if(DEC==0&&keyboard==1) //檢測減調整鍵有無按下,並進行相應操作
{
if(DEC==0&&keyboard==1)
{ RdefineT1; //超時檢測初始化

TR0=0;
switch (choose)
{
case 1 :if(sg==0)
collect_time[2]=0x20;
else collect_time[2]-=16;
break;
case 2 :if(sg<2&&sd==0)
collect_time[2] |= 0x09;
if(sg==2&&sd==0)
collect_time[2] |= 0x03;
else collect_time[2]-=1;
break;
case 3 :if(fg==0)
collect_time[1] |= 0x50;
else collect_time[1]-=16;
break;
case 4 :if(fd==0)
collect_time[1] |= 0x09;
else collect_time[1]-=1;
break;
case 5 :if(mg==0)
collect_time[0] |= 0x50;
else collect_time[0]-=16;
break;
case 6 :if(md==0)
collect_time[0] |= 0x09;
else collect_time[0]-=1;
break;
}
TR0=1;
while(DEC==0);
}
}
}

if(choose!=0) //在設置模式下停止採集時間
else
}

/********************************************************
* *
* AT89S51主程序段 *
* *
********************************************************/
void main(void)
{
Time01_Int();
Dat_Int();

EA = 1; //開中斷

ow_reset(); // 開機先轉換一次
write_byte(0xCC); // Skip ROM
write_byte(0x44); // 發轉換命令
delay(100);

Set_Time(collect_time);
delay(10);

while(1)
{
Scan();
deal();
}//while循環的結束
}//main函數的結束

void Time0_seve() interrupt 1 //定時器0中斷服務程序
{
uint timer;
uchar i,ktemp;
if((P1&0x70)<0x70) //防抖控制用
keyboard=1;
else keyboard=0;

timer++;
if(timer==800)//控制數碼管的閃動效果
{
if(choose !=0)
flash=~flash;
else flash = 1;
timer=0;
}

TR0=0;
ktemp=P0;
if(P0==0xfe)i=1;
else if(P0==0xfd)i=2;
else if(P0==0xfb)i=3;
else if(P0==0xf7)i=4;
else if(P0==0xef)i=5;
else if(P0==0xdf)i=6;
else if(P0==0xbf)i=7;
else if(P0==0x7f)i=0;
else i=1;

ktemp=ktemp*2+1;
if(ktemp==0xff)ktemp=0xfe;
P0=ktemp;
P2=display[i];
TR0=1;
}

void Time1_seve() interrupt 3 //定時器1中斷服務程序
{
TR1=0;TH1=0;TL1=0;
a++;
if(a>4*ReDetectTime)
{
choose=0;
a=0;
Set_Time(collect_time);
STA=1; //超過按鍵等待時間,自動寫入並開始採集時間
}
}
另外,站長團上有產品團購,便宜有保證

③ key和value 分別指的是什麼

key和value的本意是鑰匙和值的意思,在計算機應用中通常被用作鍵值對,例如在map、json中等。

在鍵值對中,key是關鍵字,value是值,例如:

{"firstName":"Brett","lastName":"McLaughlin"}

在這個json中,firstName和lastName是key,分別對應的value是Brett和McLaughlin。

(3)程序流程圖中的key代表什麼擴展閱讀

由於key-value的鍵值對特性,被廣泛應用鍵值對資料庫中,如redis、memchaced,查詢速度快、存放數據量大、支持高並發,非常適合通過主鍵進行查詢,但不能進行復雜的條件查詢,另外key-value型內存資料庫還具有以下特性:

1、亞毫秒級延時。

2、語法簡單,易用性強。

3、支持集群方式水平擴展。

4、支持哈希、列表、集合、有序集合等復雜的數據結構。有更多的應用場景

④ 51單片機中if(!Key0 || !Key1 || !Key3 )該怎麼理解呢其中key0,key1,key3是代表的按鍵,

if是括弧內運算值不等於0就往下執行
!Key正好代表的是當前IO狀態取反也就是為1就變成0,為0就變成1。
一般按鍵設計的都是按下去為0彈起來會1
在按鍵沒按下的情況下通過"!"(邏輯非)1變成0,3個為0所以條件不成立。
只要Key0,Key1,Key3任何一個為0通過"!"取反變成1,再通過"||"運算(邏輯或運算,有1出1全0出0),都能被判定為1。
即if成立執行if下大括弧內容。

⑤ key鍵在鍵盤上的什麼位置有什麼作用

key: 鍵盤右側,alt從左數過來的第二個,ctrl從右數過來的第一個,也就是windows徽標的右邊,就他了,就是application鍵,它的作用相當於滑鼠右鍵,用來激活Windows或程序中的菜單,即我們可以通過按下它來打開某一項目的快捷方式菜單。
希望我的回答能幫助你解決問題。

⑥ 構成程序流程圖的基本符號有那些,代表的含義是什麼

您所說的流程圖中的具體各種符號代表著什麼含義,我也不清楚,也從來的沒有聽說有關這方面的具體規范,但是我想試圖讓您理解的是,不管什麼符號,都需要給它定義,定義行為是由制定人予以完成的,要完成這項工作不應該先定義符號代表什麼,而應該在做到組織結構或者作業流程心中有數後進行歸類,根據歸類採用不同的符號加以區分。
另外,我所見過的很多有效組織結構圖都是一種符號到底的,他們採取的是多重互聯回形目錄樹的形式,也很有效阿。這也佐證我的觀點。
為了讓您的新構架流程圖不至於讓他人難於理解,建議最好不要因採取過多的符號加以分類而造成實施人難以理解。另外,還建議您在採取分類後將在流程圖的下方添加註解。
其實,沒有哪個企業會因一圖而興,關鍵靠的是實施和控制(重點包括環節控制)。圖再好,別人看不懂又有什麼用呢?沒有實施過程的監控與指導又會起多大效力呢?

⑦ java中map<key,value>是什麼意思

java中map<key,value>是泛型的典型樣式。
key和value代表鍵和值,你可以想像成兩個值一一對應,可以根據key查找到value的值。你可以把省作為key,省會作為value,根據省可以查到省會。或者把整數作為key,任何對象作為value,就和數組一樣根據整數能找到對應的對象。

Map<String,int> 就表示這個 map 的key 是String 類型 value 是 int 類,就是 強制設計期就限定map 裡面元素的類型.
JDK 5.0 中增加的泛型類型,是 Java 語言中類型安全的一次重要改進。

泛型編程(Generic Programming)最初提出時的動機很簡單直接:發明一種語言機制,能夠幫助實現一個通用的標准容器庫。所謂通用的標准容器庫,就是要能夠做到,比如用一個List類存放所有可能類型的對象,這樣的事情;
更多內容請參考《java泛型詳解_網路》

⑧ C語言中是什麼意思,Key

key 英[ki:] 美[ki]
n. 鑰匙; (打字機等的) 鍵; 關鍵,線索,秘訣; (音樂的) 調;
vt. 鍵入; 鎖上; 調節…的音調; 提供線索;
vi. 使用鑰匙;
[例句]They put the key in the door and entered
他們用鑰匙打開門進去了。
[其他] 第三人稱單數:keys 復數:keys 現在分詞:keying 過去式:keyed過去分詞:keyed

⑨ 單片機c源碼中uchar temp,key其中的key是什麼意思

根據電路的排布,temp和key分別代錶行和列,行、列都確定後,就可以定位是那個按鍵響應了~

按鍵按下後,都會進入key4x4()的函數,先用temp來區分出是哪一行(列),再用key來區分具體為那一列(行),從而確定動作按鍵的具體位置;

⑩ 數據結構中,(R[j].key<R[k].key),R[j].key和R[k].key是什麼意思,key是什麼意思

在這里,R是一個保存「結點元素」的數組,每個結點元素包含要處理的相關數據,其中有一個被稱為「關鍵字」,也就是所謂的「key」。舉例說,在記錄卡拉OK比賽選手的記錄中,每個記錄有選手的報名號,姓名,性別,身份證號,聯系電話,住址,各評委給分,綜合得分,等等。當我們要確定獲獎等級時,可選「綜合得分」為關鍵字依次選擇;當我們要確定上場順序時,可選擇「報名號」為關鍵字進行隨機抽取。
至於j和k,它們是我們在程序處理時用來指定從數組中選取哪個元素用的。R[j].key是指從數組中第j個元素的關鍵字的值。R[k].key也是類似的意思。

閱讀全文

與程序流程圖中的key代表什麼相關的資料

熱點內容
校園代理什麼工作好 瀏覽:875
東營哪裡可以交易錢幣 瀏覽:621
前列泰膠囊市場價多少錢 瀏覽:391
如何對待交易策略 瀏覽:569
這些數據你知道多少 瀏覽:893
電信小程序需要什麼證件 瀏覽:826
禁用驅動程序強制簽名怎麼啟用 瀏覽:780
自動同步數據的數據在哪裡 瀏覽:504
公司機票代理怎麼賺錢 瀏覽:806
瑞精密技術有限公司怎麼樣 瀏覽:295
投標代理公司什麼責任 瀏覽:943
反饋信息能保持多久 瀏覽:96
2050職業技術類院校如何報名 瀏覽:16
端面切槽程序怎麼編 瀏覽:868
谷歌地球有多少數據 瀏覽:294
相親怎麼發信息說對方忙 瀏覽:660
期貨最短交易時間是多少秒 瀏覽:389
為什麼要用U交易 瀏覽:259
手機不能進行數據遷移怎麼辦 瀏覽:111
錢易收代理一個月多少錢 瀏覽:330