⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 39.c

📁 C51实用程序(45个) I/O、定时器、中断、看门狗、计数器、软件AD、VB串口、93c06驱动、24c02系列驱动、7219、20045、软件陷阱、串口中断、码值转换、AVR通讯、IIC、D
💻 C
📖 第 1 页 / 共 3 页
字号:
  							{"ei ",0xC6,0x0C},
  							{"eng ",0xDD,0x0C},
  							{"i ",0xE4,0x0C},
  							{"ian ",0x29,0x0D},
  							{"iang ",0x46,0x0D},
  							{"iao ",0x5F,0x0D},
  							{"ie ",0x78,0x0D},
  							{"in ",0x83,0x0D},
  							{"ing ",0x9C,0x0D},
  							{"iu ",0xB9,0x0D},
  							{"ong ",0xD0,0x0D},
  							{"ou ",0xE3,0x0D},
  							{"u ",0xF0,0x0D},
  							{"uan ",0x19,0x0E},
  							{"ue ",0x26,0x0E},
  							{"un ",0x2B,0x0E},
  							{"uo ",0x3A,0x0E},
  							{"v ",0x53,0x0E}};
unsigned char code PY_index_m[][8]={
  							{"a ",0x70,0x0E},
  							{"ai ",0x83,0x0E},
  							{"an ",0x90,0x0E},
  							{"ang ",0xA3,0x0E},
  							{"ao ",0xB0,0x0E},
  							{"e ",0xC9,0x0E},
  							{"ei ",0xCC,0x0E},
  							{"en ",0xED,0x0E},
  							{"eng ",0xF4,0x0E},
  							{"i ",0x05,0x0F},
  							{"ian ",0x22,0x0F},
  							{"iao ",0x35,0x0F},
  							{"ie ",0x46,0x0F},
  							{"in ",0x4B,0x0F},
  							{"ing ",0x58,0x0F},
  							{"iu ",0x65,0x0F},
  							{"o ",0x68,0x0F},
  							{"ou ",0x8D,0x0F},
  							{"u ",0x94,0x0F}};
unsigned char code PY_index_n[][8]={
  							{"a ",0xB3,0x0F},
  							{"ai ",0xC2,0x0F},
  							{"an ",0xCD,0x0F},
  							{"ang ",0xD4,0x0F},
  							{"ao ",0xD7,0x0F},
  							{"e ",0xE2,0x0F},
  							{"ei ",0xE5,0x0F},
  							{"en ",0xEA,0x0F},
  							{"eng ",0xED,0x0F},
  							{"i ",0xF0,0x0F},
  							{"ian ",0x07,0x10},
  							{"iang ",0x16,0x10},
  							{"iao ",0x1B,0x10},
  							{"ie ",0x20,0x10},
  							{"in ",0x2F,0x10},
  							{"ing ",0x32,0x10},
  							{"iu ",0x3F,0x10},
  							{"ong ",0x48,0x10},
  							{"u ",0x51,0x10},
  							{"uan ",0x58,0x10},
  							{"ue ",0x5B,0x10},
  							{"uo ",0x60,0x10},
  							{"v ",0x69,0x10}};
unsigned char code PY_index_o[][8]={
  							{"  ",0x6C,0x10},
  							{"u ",0x6F,0x10}};
unsigned char code PY_index_p[][8]={
  							{"a ",0x7E,0x10},
  							{"ai ",0x8D,0x10},
  							{"an ",0x9A,0x10},
  							{"ang ",0xAB,0x10},
  							{"ao ",0xB6,0x10},
  							{"ei ",0xC5,0x10},
  							{"en ",0xD8,0x10},
  							{"eng ",0xDD,0x10},
  							{"i ",0xFA,0x10},
  							{"ian ",0x1F,0x11},
  							{"iao ",0x28,0x11},
  							{"ie ",0x31,0x11},
  							{"in ",0x36,0x11},
  							{"ing ",0x41,0x11},
  							{"o ",0x54,0x11},
  							{"ou ",0x65,0x11},
  							{"u ",0x68,0x11}};
unsigned char code PY_index_q[][8]={
  							{"i ",0x87,0x11},
  							{"ia ",0xD0,0x11},
  							{"ian ",0xD7,0x11},
  							{"iang ",0x04,0x12},
  							{"iao ",0x15,0x12},
  							{"ie ",0x34,0x12},
  							{"in ",0x3F,0x12},
  							{"ing ",0x56,0x12},
  							{"iong ",0x71,0x12},
  							{"iu ",0x76,0x12},
  							{"u ",0x87,0x12},
  							{"uan ",0xA2,0x12},
  							{"ue ",0xB9,0x12},
  							{"un ",0xCA,0x12}};
unsigned char code PY_index_r[][8]={
  							{"an ",0xCF,0x12},
  							{"ang ",0xD8,0x12},
  							{"ao ",0xE3,0x12},
  							{"e ",0xEA,0x12},
  							{"en ",0xEF,0x12},
  							{"eng ",0x04,0x13},
  							{"i ",0x09,0x13},
  							{"ong ",0x0C,0x13},
  							{"ou ",0x21,0x13},
  							{"u ",0x28,0x13},
  							{"uan ",0x3D,0x13},
  							{"ui ",0x42,0x13},
  							{"un ",0x49,0x13},
  							{"uo ",0x4E,0x13}};
unsigned char code PY_index_s[][8]={
  							{"a ",0x53,0x13},
  							{"ai ",0x5A,0x13},
  							{"an ",0x63,0x13},
  							{"ang",0x6C,0x13},
  							{"ao ",0x73,0x13},
  							{"e ",0x7C,0x13},
  							{"en ",0x83,0x13},
  							{"eng ",0x86,0x13},
  							{"ha ",0x89,0x13},
  							{"hai ",0x9C,0x13},
  							{"han ",0xA1,0x13},
  							{"hang ",0xC4,0x13},
  							{"hao ",0xD5,0x13},
  							{"he ",0xEC,0x13},
  							{"hen ",0x05,0x14},
  							{"heng ",0x28,0x14},
  							{"hi ",0x3F,0x14},
  							{"hou ",0xA0,0x14},
  							{"hu ",0xB5,0x14},
  							{"hua ",0xF8,0x14},
  							{"huai ",0xFD,0x14},
  							{"huan ",0x06,0x15},
  							{"huang",0x0B,0x15},
  							{"hui ",0x12,0x15},
  							{"hun ",0x1B,0x15},
  							{"huo ",0x24,0x15},
  							{"i ",0x2D,0x15},
  							{"ong ",0x4C,0x15},
  							{"ou ",0x5D,0x15},
  							{"u ",0x66,0x15},
  							{"uan ",0x7D,0x15},
  							{"ui ",0x84,0x15},
  							{"un ",0x9B,0x15},
  							{"uo ",0xA2,0x15}};
unsigned char code PY_index_t[][8]={
  							{"a ",0xB3,0x15},
  							{"ai ",0xC6,0x15},
  							{"an ",0xD9,0x15},
  							{"ang ",0xFE,0x15},
  							{"ao ",0x19,0x16},
  							{"e ",0x30,0x16},
  							{"eng ",0x33,0x16},
  							{"i ",0x3C,0x16},
  							{"ian ",0x5B,0x16},
  							{"iao ",0x6C,0x16},
  							{"ie ",0x79,0x16},
  							{"ing ",0x80,0x16},
  							{"ong ",0x95,0x16},
  							{"ou ",0xB0,0x16},
  							{"u ",0xB9,0x16},
  							{"uan ",0xD0,0x16},
  							{"ui ",0xD5,0x16},
  							{"un ",0xE2,0x16},
  							{"uo ",0xEB,0x16}};
unsigned char code PY_index_w[][8]={
  							{"a ",0x02,0x17},
  							{"ai ",0x11,0x17},
  							{"an ",0x16,0x17},
  							{"ang ",0x39,0x17},
  							{"ei ",0x4E,0x17},
  							{"en ",0x91,0x17},
  							{"eng ",0xA6,0x17},
  							{"o ",0xAD,0x17},
  							{"u ",0xC0,0x17}};
unsigned char code PY_index_x[][8]={
  							{"i ",0xFB,0x17},
  							{"ia ",0x40,0x18},
  							{"ian ",0x59,0x18},
  							{"iang ",0x90,0x18},
  							{"iao ",0xB9,0x18},
  							{"ie ",0xDC,0x18},
  							{"in ",0x05,0x19},
  							{"ing ",0x1A,0x19},
  							{"iong ",0x37,0x19},
  							{"iu ",0x46,0x19},
  							{"u ",0x5B,0x19},
  							{"uan ",0x82,0x19},
  							{"ue ",0x97,0x19},
  							{"un ",0xA6,0x19}};
unsigned char code PY_index_y[][8]={
  							{"a ",0xC3,0x19},
  							{"an ",0xE4,0x19},
  							{"ang ",0x27,0x1A},
  							{"ao ",0x4A,0x1A},
  							{"e ",0x6D,0x1A},
  							{"i ",0x8C,0x1A},
  							{"in ",0xF7,0x1A},
  							{"ing",0x18,0x1B},
  							{"o ",0x3D,0x1B},
  							{"ong ",0x40,0x1B},
  							{"ou ",0x5F,0x1B},
  							{"u ",0x88,0x1B},
  							{"uan ",0xE1,0x1B},
  							{"ue ",0x0A,0x1C},
  							{"un ",0x1D,0x1C}};
unsigned char code PY_index_z[][8]={
  							{"a ",0x36,0x1C},
  							{"ai ",0x3F,0x1C},
  							{"an ",0x50,0x1C},
  							{"ang ",0x59,0x1C},
  							{"ao ",0x60,0x1C},
  							{"e ",0x7D,0x1C},
  							{"ei ",0x86,0x1C},
  							{"en ",0x89,0x1C},
  							{"eng ",0x8C,0x1C},
  							{"ha ",0x93,0x1C},
  							{"hai ",0xAE,0x1C},
  							{"han ",0xBD,0x1C},
  							{"hang ",0xE0,0x1C},
  							{"hao ",0x01,0x1D},
  							{"he ",0x18,0x1D},
  							{"hen ",0x2F,0x1D},
  							{"heng ",0x52,0x1D},
  							{"hi ",0x6F,0x1D},
  							{"hong ",0xC6,0x1D},
  							{"hou ",0xDD,0x1D},
  							{"hu ",0xFA,0x1D},
  							{"hua ",0x2F,0x1E},
  							{"huai ",0x32,0x1E},
  							{"huan ",0x35,0x1E},
  							{"huang",0x40,0x1E},
  							{"hui ",0x51,0x1E},
  							{"hun ",0x5E,0x1E},
  							{"huo ",0x63,0x1E},
  							{"i ",0x78,0x1E},
  							{"ong ",0x95,0x1E},
  							{"ou ",0xA4,0x1E},
  							{"u ",0xAD,0x1E},
  							{"uan ",0xBE,0x1E},
  							{"ui ",0xC5,0x1E},
  							{"un ",0xCE,0x1E},
  							{"uo ",0xD3,0x1E}};
unsigned char code PY_index_end[][8]={" ",0,0};
  							
//=====================================================================//变量声明
unsigned int code py_mb_begin=(unsigned int)&PY_mb_a[0];
unsigned char code (* code PY_index_pointer[27])[8]={
											PY_index_a,PY_index_b,PY_index_c,PY_index_d,PY_index_e,PY_index_f,PY_index_g,PY_index_h,
											PY_index_j,PY_index_j,PY_index_k,PY_index_l,PY_index_m,PY_index_n,PY_index_o,PY_index_p,
											PY_index_q,PY_index_r,PY_index_s,PY_index_t,PY_index_w,PY_index_w,PY_index_w,PY_index_x,
											PY_index_y,PY_index_z,PY_index_end};

// 函数声明
//"拼音输入法杳询函数,input_py为已输入的拼音码,反
//回值为中文的起始地址,当为0时,杳询失败"
unsigned char code * py_ime(unsigned char input_py_val[]);

//主程序

unsigned char code * py_ime(unsigned char input_py_val[])
{
	unsigned char code (* xdata p1)[8],(* xdata p2)[8],(* xdata p3)[8];
	unsigned char xdata i=1;
	if (input_py_val[0]==0) return(0);																				//"如果输入空字符返回0"
	if (input_py_val[0]=='i') return(0);
	if (input_py_val[0]=='u') return(0);
	if (input_py_val[0]=='v') return(0);
	p1=p2=PY_index_pointer[input_py_val[0]-0x61];															  //"计算入口树根"
	p3=PY_index_pointer[input_py_val[0]-0x60];																  //"设置指针界限"
	if (p1==0) return(0);																					 //"查询失败返回0"
	while (p1<p3) if ((*p1)[0]==input_py_val[1]) {p2=p1;break;} else p1++;		
//"查询第二个拼音"
	p1=p2;
	while (p1<p3)																							 //"阶梯法查询余下拼音"
		if (((*p1)[i]==input_py_val[i+1])&&((*p1)[i-1]==input_py_val[i])) 
		{
			p2=p1;
			i++;
		} 
		else p1++;
	return((unsigned char code *)((*p2)[6]+(*p2)[7]*256+py_mb_begin));				
//"返回查询结果首地址"
}

⌨️ 快捷键说明

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