c语言,getcha(),键盘扫描码

我运行这串代码,输入方向上键 得出的是eo 48 .方向上键的键盘扫描码不是
0x4800吗
eo代表的是什么。还有输入当个字母的时候getch()为什么就只识别后八位的acsll码,前八位,怎么就不理了。还有功能键的后八位都为0,那电脑怎么知道按键是按下还是松开的。百度半天都找不到快崩溃了QWQ~
#include
#include
int main()
{

int a,b;
a=getch();
b=getch();
printf("%x %x",a,b);
}

#include
#include
int main()
{

int a,b;
a=getch();
b=getch();
printf("%x %x",a,b);
}

不用getch/getchar,用bioskey
http://blog.163.com/tun_shi@126/blog/static/80179712201082615916210/

用getch 上下左右分别为 224 + 72 or 80 or 75 or 77

    int ch;
    if(_getch()==224)
        ch=_getch();
    if(ch==72)                    //上下左右
        r=1;
    if(ch==80)
        r=2;
    if(ch==75)
        r=3;
    if(ch==77)
        r=4;

int mov(void)
{
fflush(stdin); //清除缓存数据
char key;
key = getch();

int tf = 1;

if (key == 72)
tf = movup();
else if (key == 80)
tf = movdow();
else if (key == 75)
tf = movlif();
else if (key == 77)
tf = movri();