亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

ELSE

  • It s the ID3 or ELSE named Desicion Tree algorythm, realized by the tools of Visual Studio developer

    It s the ID3 or ELSE named Desicion Tree algorythm, realized by the tools of Visual Studio developer system.

    標(biāo)簽: the algorythm developer Desicion

    上傳時間: 2014-12-20

    上傳用戶:lwwhust

  • It s the kNN or ELSE named k-Nearest Neabours algorythm, realized by the tools of Visual Studio deve

    It s the kNN or ELSE named k-Nearest Neabours algorythm, realized by the tools of Visual Studio developer system.

    標(biāo)簽: the algorythm k-Nearest Neabours

    上傳時間: 2014-01-20

    上傳用戶:gengxiaochao

  • 調(diào)用方法簡單,支持if ELSE include之類的標(biāo)簽, 可以包含擴(kuò)展函數(shù),整個模版文件沒有外部include和require,減少io操作, 加載三個模版變量,兩個數(shù)組變量,比smartte

    調(diào)用方法簡單,支持if ELSE include之類的標(biāo)簽, 可以包含擴(kuò)展函數(shù),整個模版文件沒有外部include和require,減少io操作, 加載三個模版變量,兩個數(shù)組變量,比smarttemplate快平均2-3毫秒. 單純加載模版文件,不設(shè)置任何變量lightemplate平均0.3毫秒左右,smarttemplate至少要1毫秒.

    標(biāo)簽: include require smartte ELSE

    上傳時間: 2017-08-03

    上傳用戶:大融融rr

  • 我寫的php模版類,調(diào)用方法簡單,支持if ELSE include之類的標(biāo)簽, 可以包含擴(kuò)展函數(shù),整個模版文件沒有外部include和require,減少io操作, 加載三個模版變量,兩個數(shù)組變

    我寫的php模版類,調(diào)用方法簡單,支持if ELSE include之類的標(biāo)簽, 可以包含擴(kuò)展函數(shù),整個模版文件沒有外部include和require,減少io操作, 加載三個模版變量,兩個數(shù)組變量,比smarttemplate快平均2-3毫秒. 單純加載模版文件,不設(shè)置任何變量lightemplate平均0.3毫秒左右,smarttemplate至少要1毫秒.

    標(biāo)簽: include require ELSE 模版

    上傳時間: 2014-01-15

    上傳用戶:linlin

  • ucos在ATMEGA128L上的移植

    和其他的μC/OS-II移植文件類似,設(shè)備代碼由以下3 到5 個文件組成的。 Os_cpu.h Os_cpu_c.c Os_cpu_a.s90 (該文件僅在ICC 編譯器中使用) Os_cpu_i.s90 (該文件僅在ICC 編譯器中使用) Os_dbg.c Os_dbg.c 僅需在IAR 工程中使用。 3.01 OS_CPU.H 3.01.01 OS_CPU.H, macros for ‘externals’ Listing 3-1, OS_CPU.H, 外部宏(macros for ‘externals’) #ifdef OS_CPU_GLOBALS #define OS_CPU_EXT #ELSE #define OS_CPU_EXT extern #endif  

    標(biāo)簽: ATMEGA ucos 128L 128

    上傳時間: 2013-11-25

    上傳用戶:zhaistone

  • C51原理及相關(guān)基礎(chǔ)入門知識

    C51原理及相關(guān)基礎(chǔ)入門知識 第一章:C51 流程控制語句一、分類條件語句、循環(huán)語句和開關(guān)語句。下面將對這些語句作詳細(xì)介紹。(1) 條件語句條件語句的一般形式為:if(表達(dá)式)語句 1;ELSE語句 2;上述結(jié)構(gòu)表示: 如果表達(dá)式的值為非0(TURE)即真, 則執(zhí)行語句1, 執(zhí)行完語句1 從語句2 后開始繼續(xù)向下執(zhí)行; 如果表達(dá)式的值為 0(FALSE)即假, 則跳過語句1 而執(zhí)行語句2。所謂表達(dá)式是指關(guān)系表達(dá)式和邏輯表達(dá)式的結(jié)合式。注意:1. 條件執(zhí)行語句中"ELSE 語句2;"部分是選擇項, 可以缺省, 此時條件語句變成:if(表達(dá)式) 語句1;表示若表達(dá)式的值為非 0 則執(zhí)行語句1 , 否則跳過語句1 繼續(xù)執(zhí)行。2. 如果語句1 或語句2 有多于一條語句要執(zhí)行時, 必須使用"{"和"}" 把這些語句包括在其中, 此時條件語句形式為:if(表達(dá)式){語句體 1;}ELSE{語句體 2;}3. 條件語句可以嵌套, 這種情況經(jīng)常碰到, 但條件嵌套語句容易出錯, 其原因主要是不知道哪個if 對應(yīng)哪個ELSE。例如:if(x>20||x<-10)if(y<=100&&y>x)printf("Good");ELSEprintf("Bad");對于上述情況,規(guī)定: ELSE 語句與最近的一個if 語句匹配, 上例中的 ELSE 與 if(y<=100&&y>x) 相匹配。為了使 ELSE 與if(x>20||x<-10) 相匹配, 必須用花括號。如下所示:if(x>20||x<-10){if(y<=100&&y>x)printf("Good");}

    標(biāo)簽: C51 入門知識

    上傳時間: 2013-10-24

    上傳用戶:Sophie

  • C51中的關(guān)鍵字及用途說明

    C51 中的關(guān)鍵字關(guān)鍵字 用途 說明auto 存儲種類說明 用以說明局部變量,缺省值為此break 程序語句 退出最內(nèi)層循環(huán)case 程序語句 Switch 語句中的選擇項char 數(shù)據(jù)類型說明 單字節(jié)整型數(shù)或字符型數(shù)據(jù)const 存儲類型說明 在程序執(zhí)行過程中不可更改的常量值continue 程序語句 轉(zhuǎn)向下一次循環(huán)default 程序語句 Switch 語句中的失敗選擇項do 程序語句 構(gòu)成do..while 循環(huán)結(jié)構(gòu)double 數(shù)據(jù)類型說明 雙精度浮點數(shù)ELSE 程序語句 構(gòu)成if..ELSE 選擇結(jié)構(gòu)enum 數(shù)據(jù)類型說明 枚舉extern 存儲種類說明 在其他程序模塊中說明了的全局變量flost 數(shù)據(jù)類型說明 單精度浮點數(shù)for 程序語句 構(gòu)成for 循環(huán)結(jié)構(gòu)goto 程序語句 構(gòu)成goto 轉(zhuǎn)移結(jié)構(gòu)if 程序語句 構(gòu)成if..ELSE 選擇結(jié)構(gòu)int 數(shù)據(jù)類型說明 基本整型數(shù)long 數(shù)據(jù)類型說明 長整型數(shù)register 存儲種類說明 使用CPU 內(nèi)部寄存的變量return 程序語句 函數(shù)返回short 數(shù)據(jù)類型說明 短整型數(shù)signed 數(shù)據(jù)類型說明 有符號數(shù),二進(jìn)制數(shù)據(jù)的最高位為符號位sizeof 運算符 計算表達(dá)式或數(shù)據(jù)類型的字節(jié)數(shù)static 存儲種類說明 靜態(tài)變量struct 數(shù)據(jù)類型說明 結(jié)構(gòu)類型數(shù)據(jù)swicth 程序語句 構(gòu)成switch 選擇結(jié)構(gòu)typedef 數(shù)據(jù)類型說明 重新進(jìn)行數(shù)據(jù)類型定義union 數(shù)據(jù)類型說明 聯(lián)合類型數(shù)據(jù)unsigned 數(shù)據(jù)類型說明 無符號數(shù)數(shù)據(jù)void 數(shù)據(jù)類型說明 無類型數(shù)據(jù)volatile 數(shù)據(jù)類型說明 該變量在程序執(zhí)行中可被隱含地改變while 程序語句 構(gòu)成while 和do..while 循環(huán)結(jié)構(gòu)ANSIC 標(biāo)準(zhǔn)關(guān)鍵字關(guān)鍵字 用途 說明bit 位標(biāo)量聲明 聲明一個位標(biāo)量或位類型的函數(shù)sbit 位標(biāo)量聲明 聲明一個可位尋址變量

    標(biāo)簽: C51

    上傳時間: 2013-10-08

    上傳用戶:waves_0801

  • AT89C2051驅(qū)動步進(jìn)電機(jī)的電路和源碼

    AT89C2051驅(qū)動步進(jìn)電機(jī)的電路和源碼:AT89C2051驅(qū)動步進(jìn)電機(jī)的電路和源碼 程序:stepper.c stepper.hex/* * STEPPER.C * sweeping stepper's rotor cw and cww 400 steps * Copyright (c) 1999 by W.Sirichote */#i nclude c:\mc5151io.h /* include i/o header file */ #i nclude c:\mc5151reg.hregister unsigned char j,flag1,temp; register unsigned int cw_n,ccw_n;unsigned char step[8]={0x80,0xc0,0x40,0x60,0x20,0x30,0x10,0x90} #define n 400/* flag1 mask byte 0x01 run cw() 0x02 run ccw() */main(){ flag1=0; serinit(9600); disable(); /* no need timer interrupt */ cw_n = n; /* initial step number for cw */ flag1 |=0x01; /* initial enable cw() */while(1){ { tick_wait(); /* wait for 10ms elapsed */energize(); /* round-robin execution the following tasks every 10ms */ cw(); ccw(); } }}cw(){ if((flag1&0x01)!=0) { cw_n--; /* decrement cw step number */ if (cw_n !=0) j++; /* if not zero increment index j */ ELSE {flag1&=~0x01; /* disable cw() execution */ ccw_n = n; /* reload step number to ccw counter */ flag1 |=0x02; /* enable cww() execution */ } }

    標(biāo)簽: C2051 2051 89C AT

    上傳時間: 2013-11-21

    上傳用戶:boyaboy

  • C51基本結(jié)構(gòu)程序設(shè)計

    C51基本結(jié)構(gòu)程序設(shè)計1. 掌握if語句來實現(xiàn)選擇結(jié)構(gòu),能利用if語句編寫相應(yīng)的分枝結(jié)構(gòu)的程序。在嵌套if語句中,一定要搞清楚ELSE與哪個if結(jié)合的問題。2.掌握switch語句來實現(xiàn)多向分枝選擇結(jié)構(gòu),能利用switch語句編寫相應(yīng)的分枝結(jié)構(gòu)的程序。 3. 掌握循環(huán)語句的即初始化、循環(huán)體、循環(huán)控制及結(jié)束四個部分,并能進(jìn)行循環(huán)語句的程序設(shè)計。分別掌握for 語句、while語句以及do-while語句的使用語法及方法,能利用這三種循環(huán)結(jié)構(gòu)進(jìn)行循環(huán)程序設(shè)計,理解這三種語句的異同。4.理解并掌握continue、break語句在循環(huán)結(jié)構(gòu)和選擇結(jié)構(gòu)中的作用。對于goto語句,理解該語句優(yōu)缺點。C51語言是結(jié)構(gòu)化編程語言。結(jié)構(gòu)化語言的基本元素是模塊,它是程序的一部分.只有一個出口和一個入口.不允許有偶然的中途插入或以模塊的其它路徑退出。結(jié)構(gòu)化編程語言在沒有妥善保護(hù)或恢復(fù)堆棧和其它相關(guān)的寄存器之前,不應(yīng)隨便跳入或跳出一個模塊。因此使用這種結(jié)構(gòu)化語言進(jìn)行編程,當(dāng)要退出中斷時,堆棧不會因為程序使用了任何可以接受的命令而崩潰。    結(jié)構(gòu)化程序由若干模塊組成,每個模塊中包含著若干個基本結(jié)構(gòu),而每個基本結(jié)構(gòu)中可以有若干條語句。歸納起來,C51程序有順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)共三種結(jié)構(gòu)。

    標(biāo)簽: C51 基本結(jié)構(gòu) 程序設(shè)計

    上傳時間: 2013-11-01

    上傳用戶:四只眼

  • 驅(qū)動程序與應(yīng)用程序的接口

    有兩種方式可以讓設(shè)備和應(yīng)用程序之間聯(lián)系:1. 通過為設(shè)備創(chuàng)建的一個符號鏈;2. 通過輸出到一個接口WDM驅(qū)動程序建議使用輸出到一個接口而不推薦使用創(chuàng)建符號鏈的方法。這個接口保證PDO的安全,也保證安全地創(chuàng)建一個惟一的、獨立于語言的訪問設(shè)備的方法。一個應(yīng)用程序使用Win32APIs來調(diào)用設(shè)備。在某個Win32 APIs和設(shè)備對象的分發(fā)函數(shù)之間存在一個映射關(guān)系。獲得對設(shè)備對象訪問的第一步就是打開一個設(shè)備對象的句柄。 用符號鏈打開一個設(shè)備的句柄為了打開一個設(shè)備,應(yīng)用程序需要使用CreateFile。如果該設(shè)備有一個符號鏈出口,應(yīng)用程序可以用下面這個例子的形式打開句柄:hDevice = CreateFile("\\\\.\\OMNIPORT3",  GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ,  NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL ,NULL);文件路徑名的前綴“\\.\”告訴系統(tǒng)本調(diào)用希望打開一個設(shè)備。這個設(shè)備必須有一個符號鏈,以便應(yīng)用程序能夠打開它。有關(guān)細(xì)節(jié)查看有關(guān)Kdevice和CreateLink的內(nèi)容。在上述調(diào)用中第一個參數(shù)中前綴后的部分就是這個符號鏈的名字。注意:CreatFile中的第一個參數(shù)不是Windows 98/2000中驅(qū)動程序(.sys文件)的路徑。是到設(shè)備對象的符號鏈。如果使用DriverWizard產(chǎn)生驅(qū)動程序,它通常使用類KunitizedName來構(gòu)成設(shè)備的符號鏈。這意味著符號鏈名有一個附加的數(shù)字,通常是0。例如:如果鏈接名稱的主干是L“TestDevice”那么在CreateFile中的串就該是“\\\\.\\TestDevice0”。如果應(yīng)用程序需要被覆蓋的I/O,第六個參數(shù)(Flags)必須或上FILE_FLAG_OVERLAPPED。 使用一個輸出接口打開句柄用這種方式打開一個句柄會稍微麻煩一些。DriverWorks庫提供兩個助手類來使獲得對該接口的訪問容易一些,這兩個類是CDeviceInterface, 和 CdeviceInterfaceClass。CdeviceInterfaceClass類封裝了一個設(shè)備信息集,該信息集包含了特殊類中的所有設(shè)備接口信息。應(yīng)用程序能有用CdeviceInterfaceClass類的一個實例來獲得一個或更多的CdeviceInterface類的實例。CdeviceInterface類是一個單一設(shè)備接口的抽象。它的成員函數(shù)DevicePath()返回一個路徑名的指針,該指針可以在CreateFile中使用來打開設(shè)備。下面用一個小例子來顯示這些類最基本的使用方法:extern GUID TestGuid;HANDLE OpenByInterface(  GUID* pClassGuid,  DWORD instance,  PDWORD pError){  CDeviceInterfaceClass DevClass(pClassGuid, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  CDeviceInterface DevInterface(&DevClass, instance, pError);  if (*pError != ERROR_SUCCESS)    return INVALID_HANDLE_VALUE;  cout << "The device path is "    << DevInterface.DevicePath()    << endl;   HANDLE hDev;  hDev = CreateFile(   DevInterface.DevicePath(),    GENERIC_READ | GENERIC_WRITE,    FILE_SHARE_READ | FILE_SHARE_WRITE,    NULL,    OPEN_EXISTING,    FILE_ATTRIBUTE_NORMAL,    NULL  );  if (hDev == INVALID_HANDLE_VALUE)    *pError = GetLastError();  return hDev;} 在設(shè)備中執(zhí)行I/O操作一旦應(yīng)用程序獲得一個有效的設(shè)備句柄,它就能使用Win32 APIs來產(chǎn)生到設(shè)備對象的IRPs。下面的表顯示了這種對應(yīng)關(guān)系。Win32 API  DRIVER_FUNCTION_xxxIRP_MJ_xxx  KDevice subclass member function CreateFile  CREATE  Create ReadFile  READ  Read WriteFile  WRITE  Write DeviceIoControl  DEVICE_CONTROL  DeviceControl CloseHandle  CLOSECLEANUP  CloseCleanUp 需要解釋一下設(shè)備類成員的Close和CleanUp:CreateFile使內(nèi)核為設(shè)備創(chuàng)建一個新的文件對象。這使得多個句柄可以映射同一個文件對象。當(dāng)這個文件對象的最后一個用戶級句柄被撤銷后,I/O管理器調(diào)用CleanUp。當(dāng)沒有任何用戶級和核心級的對文件對象的訪問的時候,I/O管理器調(diào)用Close。如果被打開的設(shè)備不支持指定的功能,則調(diào)用相應(yīng)的Win32將引起錯誤(無效功能)。以前為Windows95編寫的VxD的應(yīng)用程序代碼中可能會在打開設(shè)備的時候使用FILE_FLAG_DELETE_ON_CLOSE屬性。在Windows NT/2000中,建議不要使用這個屬性,因為它將導(dǎo)致沒有特權(quán)的用戶企圖打開這個設(shè)備,這是不可能成功的。I/O管理器將ReadFile和WriteFile的buff參數(shù)轉(zhuǎn)換成IRP域的方法依賴于設(shè)備對象的屬性。當(dāng)設(shè)備設(shè)置DO_DIRECT_IO標(biāo)志,I/O管理器將buff鎖住在存儲器中,并且創(chuàng)建了一個存儲在IRP中的MDL域。一個設(shè)備可以通過調(diào)用Kirp::Mdl來存取MDL。當(dāng)設(shè)備設(shè)置DO_BUFFERED_IO標(biāo)志,設(shè)備對象分別通過KIrp::BufferedReadDest或 KIrp::BufferedWriteSource為讀或?qū)懖僮鳙@得buff地址。當(dāng)設(shè)備不設(shè)置DO_BUFFERED_IO標(biāo)志也不設(shè)置DO_DIRECT_IO,內(nèi)核設(shè)置IRP 的UserBuffer域來對應(yīng)ReadFile或WriteFile中的buff參數(shù)。然而,存儲區(qū)并沒有被鎖住而且地址只對調(diào)用進(jìn)程有效。驅(qū)動程序可以使用KIrp::UserBuffer來存取IRP域。對于DeviceIoControl調(diào)用,buffer參數(shù)的轉(zhuǎn)換依賴于特殊的I/O控制代碼,它不在設(shè)備對象的特性中。宏CTL_CODE(在winioctl.h中定義)用來構(gòu)造控制代碼。這個宏的其中一個參數(shù)指明緩沖方法是METHOD_BUFFERED, METHOD_IN_DIRECT, METHOD_OUT_DIRECT, 或METHOD_NEITHER。下面的表顯示了這些方法和與之對應(yīng)的能獲得輸入緩沖與輸出緩沖的KIrp中的成員函數(shù):Method  Input Buffer Parameter  Output Buffer Parameter METHOD_BUFFERED  KIrp::IoctlBuffer KIrp::IoctlBuffer METHOD_IN_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_OUT_DIRECT  KIrp::IoctlBuffer KIrp::Mdl METHOD_NEITHER  KIrp::IoctlType3InputBuffer KIrp::UserBuffer 如果控制代碼指明METHOD_BUFFERED,系統(tǒng)分配一個單一的緩沖來作為輸入與輸出。驅(qū)動程序必須在向輸出緩沖放數(shù)據(jù)之前拷貝輸入數(shù)據(jù)。驅(qū)動程序通過調(diào)用KIrp::IoctlBuffer獲得緩沖地址。在完成時,I/O管理器從系統(tǒng)緩沖拷貝數(shù)據(jù)到提供給Ring 3級調(diào)用者使用的緩沖中。驅(qū)動程序必須在結(jié)束前存儲拷貝到IRP的Information成員中的數(shù)據(jù)個數(shù)。如果控制代碼不指明METHOD_IN_DIRECT或METHOD_OUT_DIRECT,則DeviceIoControl的參數(shù)呈現(xiàn)不同的含義。參數(shù)InputBuffer被拷貝到一個系統(tǒng)緩沖,這個緩沖驅(qū)動程序可以通過調(diào)用KIrp::IoctlBuffer。參數(shù)OutputBuffer被映射到KMemory對象,驅(qū)動程序?qū)@個對象的訪問通過調(diào)用KIrp::Mdl來實現(xiàn)。對于METHOD_OUT_DIRECT,調(diào)用者必須有對緩沖的寫訪問權(quán)限。注意,對METHOD_NEITHER,內(nèi)核只提供虛擬地址;它不會做映射來配置緩沖。虛擬地址只對調(diào)用進(jìn)程有效。這里是一個用METHOD_BUFFERED的例子:首先,使用宏CTL_CODE來定義一個IOCTL代碼:#define IOCTL_MYDEV_GET_FIRMWARE_REV \CTL_CODE (FILE_DEVICE_UNKNOWN,0,METHOD_BUFFERED,FILE_ANY_ACCESS)現(xiàn)在使用一個DeviceIoControl調(diào)用:BOOLEAN b;CHAR FirmwareRev[60];ULONG FirmwareRevSize;b = DeviceIoControl(hDevice, IOCTL_MYDEV_GET_VERSION_STRING,  NULL, // no input  注意,這里放的是包含有執(zhí)行操作命令的字符串指針  0, FirmwareRev,      //這里是output串指針,存放從驅(qū)動程序中返回的字符串。sizeof(FirmwareRev),& FirmwareRevSize,  NULL // not overlapped I/O );如果輸出緩沖足夠大,設(shè)備拷貝串到里面并將拷貝的資結(jié)束設(shè)置到FirmwareRevSize中。在驅(qū)動程序中,代碼看起來如下所示:const char* FIRMWARE_REV = "FW 16.33 v5";NTSTATUS MyDevice::DeviceControl( KIrp I ){  ULONG fwLength=0;  switch ( I.IoctlCode() )  {    case IOCTL_MYDEV_GET_FIRMWARE_REV:      fwLength = strlen(FIRMWARE_REV)+1;      if (I.IoctlOutputBufferSize() >= fwLength)      {        strcpy((PCHAR)I.IoctlBuffer(),FIRMWARE_REV);        I.Information() = fwLength;         return I.Complete(STATUS_SUCCESS);      }      ELSE      {              }    case . . .   } }

    標(biāo)簽: 驅(qū)動程序 應(yīng)用程序 接口

    上傳時間: 2013-10-17

    上傳用戶:gai928943

主站蜘蛛池模板: 含山县| 德庆县| 万安县| 闵行区| 普宁市| 饶平县| 贵港市| 曲阳县| 峨山| 庆元县| 凤城市| 河曲县| 郎溪县| 华宁县| 昌江| 平湖市| 闻喜县| 白水县| 山阴县| 舞钢市| 邓州市| 佛山市| 莆田市| 会昌县| 金寨县| 平陆县| 白朗县| 绿春县| 湖南省| 夹江县| 伊川县| 沧源| 通海县| 无极县| 会泽县| 望江县| 南召县| 康定县| 札达县| 道孚县| 柳江县|