用C51寫的普通拼音輸入法源程序代碼:原作使用了一個二維數組用以查表,我認為這樣比較的浪費空間,而且每個字表的索引地址要手工輸入,效率不高。所以我用結構體將其改寫了一下。就是大家現在看到的這個。 因為代碼比較的大,共有6,000多漢字,這樣就得要12,000 byte來存放GB內碼,所以也是沒辦法的.編譯結果約為3000h,因為大部分是索引表,代碼優化幾乎無效。 在Keil C里仿真芯片選用的是華邦的W77E58,它有32k ROM, 256B on-chip RAM, 1K on-chip SRAM (用DPTR1指針尋址,相當于有1K的片上xdata)。條件有限,沒有上片試驗,仿真而已。 打算將其移植到AVR上,但CodeAVRC與IAR EC++在結構體、指針的定義使用上似乎與C51不太一樣,現在還未搞定。還希望在這方面有經驗的網友能給予指導。 #include<stdio.h> char * py_ime(char *); void main(void){ while(1) { char input_string[]="yI"; xdata char chinese_string[255]; sprintf(chinese_string,"%s",py_ime(input_string)); }}
上傳時間: 2013-10-30
上傳用戶:cainaifa
HI-TECH PICC C 的使用說明. 這里我們只講述了PICC C 與標準C 的不同,它不是一本C 語言的教程, 并且我們假定你有C 語言的基礎. 為了對PIC 單片機有更好的支持,PICC 在標準C 的基礎上作了一些擴充: 定義I/O 函數,以便在你的硬件系統中使用<stdio.h>中定義的函數。 用C 語言編寫中斷服務程序 用C 語言編寫I/O 操作程序 C 語言與匯編語言間的接口1-1 與標準C 的不同PICC 只在一處與標準C 不同:函數的重入。因為PIC 單片機的寄存器及堆棧有限,所以PICC 不支持可重入函數。1-2 支持的PIC 芯片PICC 支持很多PIC 單片機,支持PIC 單片機的類型在LIB 目錄下的picinfo.ini文件中有定義。1-3 PICC 包含一些標準庫1-4 PICC 編譯器可以輸出一些格式的目標文件,缺省設置為輸出Bytecraft 的'COD'格式和 Intel 的'HEX'格式。你可以用表1-1 中的命令來指定輸出格式。
上傳時間: 2013-10-10
上傳用戶:781354052
微型打印機的C語言源程序:微型打印機的C51源程序#define uchar unsigned char#define uint unsigned int#include <reg52.h>#include <stdio.h>#include <absacc.h>#include <math.h>#include <string.h>#include <ctype.h>#include <stdlib.h>#define PIN XBYTE[0x8000]#define POUT XBYTE[0x9000]sbit PRINTSTB =P1^6;sbit DOG=P1^7;bdata char pin&#118alue;sbit PRINTBUSY=pin&#118alue^7;sbit PRINTSEL =pin&#118alue^6;sbit PRINTERR =pin&#118alue^5;sbit PRINTACK =pin&#118alue^4; void PrintString(uchar *String1,uchar *String2);void initprint(void);void print(uchar a); void initprint(void) //打印機初始化子程序 { pin&#118alue=PIN; if((PRINTSEL==1)&&(PRINTERR==1)) { print(0x1b); print(0x40); print(0x1b); print(0x38); print(0x4); }}void print(uchar a) //打印字符a{ pin&#118alue=PIN; if((PRINTSEL==0)||(PRINTERR==0)) return; for(;;) { DOG=~DOG; pin&#118alue=PIN; if(PRINTBUSY==0) break; } DOG=~DOG; POUT=a; PRINTSTB=1; PRINTSTB=1; PRINTSTB=1; PRINTSTB=1; PRINTSTB=0; PRINTSTB=0; PRINTSTB=0; PRINTSTB=0; PRINTSTB=1;}void PrintString(uchar *String) //打印字符串后回車{ uchar CH; for (;;) { DOG=~DOG; CH=*String; if (CH==0) { print(0x0d); break; } print(CH); String++; } initprint();}
上傳時間: 2013-10-18
上傳用戶:hasan2015
C語言函數大全,已包含絕大部分的函數。每個函數包含函數名,功能,用法,舉例,內容詳盡。希望對大家有所幫助~~ 函數名: abort 功 能: 異常終止一個進程 用 法: void abort(void); 程序例: #include #include int main(void) { printf("Calling abort()\n"); abort(); return 0; /* This is never reached */ } 函數名: abs 功 能: 求整數的絕對值 用 法: int abs(int i); 程序例: #include #include int main(void) { int number = -1234; printf("number: %d absolute value: %d\n", number, abs(number)); return 0; }
上傳時間: 2013-12-06
上傳用戶:feifei0302
//------------------------------------------------------------------------------------//此程序為ADC轉換程序,可以選擇向ADC0BUSY寫1或用定時器0,1,2,3作為ADC的啟動信號。////------------------------------------------------------------------------------------//頭文件定義//------------------------------------------------------------------------------------//#include <c8051f330.h> #include <stdio.h> //-----------------------------------------------------------------------------// 定義16位特殊功能寄存器//----------------------------------------------------------------------------- sfr16 ADC0 = 0xbd; sfr16 TMR0RL = 0xca; sfr16 TMR1RL = 0xca; sfr16 TMR2RL =0xca; sfr16 TMR3RL =0xca; sfr16 TMR0 = 0xCC; sfr16 TMR1 = 0xCC; sfr16 TMR2 = 0xcc; sfr16 TMR3 = 0xcc; //-----------------------------------------------------------------------------// 全局變量定義//-----------------------------------------------------------------------------char i;int result; //-----------------------------------------------------------------------------//定義常量//-----------------------------------------------------------------------------#define SYSCLK 49000000 #define SAMPLE_RATE 50000 //------------------------------------------------------------------------------------// 定義函數//------------------------------------------------------------------------------------void SYSCLK_Init (void);void PORT_Init (void);void Timer0_Init (int counts);void Timer1_Init (int counts);void Timer2_Init (int counts);void Timer3_Init (int counts);void ADC0_Init(void);void ADC0_ISR (void);void ADC0_CNVS_ADC0h(void);//------------------------------------------------------------------------------------// 主程序//------------------------------------------------------------------------------------ void main (void) { int ADCRESULT[50] ; int k; PCA0MD &= ~0x40; // 禁止看門狗 SYSCLK_Init (); PORT_Init (); Timer0_Init (SYSCLK/SAMPLE_RATE); //Timer1_Init (SYSCLK/SAMPLE_RATE); //選擇相應的啟動方式 //Timer2_Init (SYSCLK/SAMPLE_RATE); //Timer3_Init (SYSCLK/SAMPLE_RATE); ADC0_Init(); EA=1; while(1) { //ADC0_CNVS_ADC0h(); k=ADC0; ADCRESULT[i]=result; //此處設斷點,觀察ADCRESULT的結果 } }
上傳時間: 2013-10-13
上傳用戶:SimonQQ
此為C++源代碼轉換為HTML格式程序,Visual stdio 2003環境編譯。
上傳時間: 2013-12-11
上傳用戶:skhlm
安裝步驟: 1. 系統開發語言:asp.net+access/sql server,安裝時需保證您的服務器對asp.net和access/sql server數據庫的 支持。windows 2000,xp 用戶需要安裝.NET Framework 1.1 版可再發行組件包 ,.NET Framework 1.1 Service Pack 1,.NET Framework SDK 1.1 版。 請按上面的順序依次安裝,您的服務器即可支持asp.net。也可以省略上述過程直接安裝visual stdio.net。 2. 將webshot文件夾復制的硬盤上某目錄下,在IIS中建立虛擬目錄指向該文件夾。 3.修改Web.config配置文件中,將“F:/web/dinghuidanhomecom/db/eshop.mdb”替換為正確的數據庫文件絕對路徑。 請注意斜杠/的方向。 數據庫絕對路徑:在IIS中建立虛擬目錄指向webshot根目錄文件夾后訪問 http://localhost/aspcheck.aspx,其中的APPL_PHYSICAL_PATH變量可以給出webshot文件夾的絕對路徑,在加上數據庫相對 路徑即可。注:必須用數據庫絕對路徑 4. 數據庫位置在db/文件夾下,默認名稱eshop.mdb,修改時請同時修改web.config中的數據庫絕對路徑
上傳時間: 2015-03-17
上傳用戶:xiaoxiang
學籍管理系統 系統是在VC++6.0和SQL Server 2000下開發的. 數據庫在Database目錄下,在SQLSERVER的查詢分析器中執行即可生成數據庫. 源程序在Src目錄中. 因為程序極為經典,所以本人在此轉載~ 一、編程環境: windows2000 +visual stdio c++ .net,Ado + SQL2000 二、SQL設置: 將在SQL2000下建立schooldata數據庫,導入數據文件 三、導入數據: data目錄下有school_back數據庫備分文件 操作:用SQL企業管理器還原數據庫來導入數據 訪問本地數據庫服務器,密碼是自己設置的那個,操作schooldata數據庫的用戶名和密碼相同。 主要用ADO訪問數據庫,和幾個顯示數據的控件Treectrl,listctrl,datagrid等程序中有幾個BUG還沒解決, 四、實現功能: 操作:在選擇查詢條件:選擇一個,tree控件里顯示相關信息 可以在tree控件里單擊來顯示每個ITEM,每個ITEM相關信息顯示在LIST控件內 雙擊LIST控件顯示具體信息 也可以在窗口里單擊右鍵或操作菜單具體操作 五、主要功能: 查詢,添加,刪除,顯示“學院,各系,班級,學生,教師,社團,課程”等信息
標簽: SQLSERVER Database Server 2000
上傳時間: 2015-05-11
上傳用戶:wuyuying
剖析Intel IA32 架構下C 語言及CPU 浮點數機制 Version 0.01 哈爾濱工業大學 謝煜波 (email: xieyubo@126.com 網址:http://purec.binghua.com) (QQ:13916830 哈工大紫丁香BBSID:iamxiaohan) 前言 這兩天翻看一本C 語言書的時候,發現上面有一段這樣寫到 例:將同一實型數分別賦值給單精度實型和雙精度實型,然后打印輸出。 #include <stdio.h> main() { float a double b a = 123456.789e4 b = 123456.789e4 printf(“%f\n%f\n”,a,b) } 運行結果如下:
標簽: Version xieyubo Intel email
上傳時間: 2013-12-25
上傳用戶:徐孺
vxworks libc庫源代碼,標準C代碼庫實現 assert ctype locale math setjmp stdarg stdio stdlib string time
上傳時間: 2015-08-13
上傳用戶:bruce5996