WinIO中GetPortVal函数有关问题

WinIO中GetPortVal函数问题
小弟最近在调程序时,使用GetPortVal读取IO口的数据,GetPortVal(iADDAILow(地址),&dw(读出数据寄存器),1);,读出的结果是0xFFFFFFB0,程序的意思是要读出1个字节的数,为什么给出了4个字节的数,而且还是负数,这是什么原因?怎么解决这个呢?

------解决方案--------------------
调用GetPortVal以前,将dw初始化一下,如:
dw = 0x0;
GetPortVal(iADDAILow(地址),&dw(读出数据寄存器),1);