unit Unit2;interfaceuses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.DFM}
function GetChinaChar(ChinaChar:String):Char;
//获取指定汉字的拼音字母
begin
   case WORD(ChinaChar[1]) shl 8 + WORD(ChinaChar[2]) of
      $B0A1..$B0C4 : Result := 'A';
      $B0C5..$B2C0 : Result := 'B';
      $B2C1..$B4ED : Result := 'C';
      $B4EE..$B6E9 : Result := 'D';
      $B6EA..$B7A1 : Result := 'E';
      $B7A2..$B8C0 : Result := 'F';
      $B8C1..$B9FD : Result := 'G';
      $B9FE..$BBF6 : Result := 'H';
      $BBF7..$BFA5 : Result := 'J';
      $BFA6..$C0AB : Result := 'K';
      $C0AC..$C2E7 : Result := 'L';
      $C2E8..$C4C2 : Result := 'M';
      $C4C3..$C5B5 : Result := 'N';
      $C5B6..$C5BD : Result := 'O';
      $C5BE..$C6D9 : Result := 'P';
      $C6DA..$C8BA : Result := 'Q';
      $C8BB..$C8F5 : Result := 'R';
      $C8F6..$CBF9 : Result := 'S';
      $CBFA..$CDD9 : Result := 'T';
      $CDDA..$CEF3 : Result := 'W';
      $CEF4..$D188 : Result := 'X';
      $D1B9..$D4D0 : Result := 'Y';
      $D4D1..$D7F9 : Result := 'Z';
   else
      Result := char(0);
   end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin  showmessage(GetChinaChar(edit1.text));
  showmessage(GetChinaChar(edit2.text));
  showmessage(GetChinaChar(edit3.text));
  edit4.Text:=GetChinaChar(edit1.text)+GetChinaChar(edit2.text)+GetChinaChar(edit3.text);
end;procedure TForm1.Button2Click(Sender: TObject);
var
  i:integer;
  str:string;
begin
 // showmessage(WORD(ChinaChar[1]) shl 8 + WORD(ChinaChar[2]));
  i:=1;
  while i<=length(edit5.text) do
    begin
      str:=copy(edit5.text,i,2);
      showmessage(GetChinaChar(str));
      edit4.Text:=edit4.text+getchinachar(str);
      i:=i+2;
    end;
  
end;procedure TForm1.Button3Click(Sender: TObject);
begin
  //一个汉字的大小是两个字母的大小
  showmessage(inttostr(word('林'[1])));//word是取出汉字的第一个字节的二进制码
  showmessage(inttostr(word('林'[2])));//word是取出汉字的第二个字节的二进制码
  showmessage(inttostr(WORD('林'[1]) shl 8 + WORD('谷'[2])));//shl是左移。将第一个字节左移8位后加上第二个字节既是该字的二进制码;
end;end.