|
-.-;;
결론부터 말씀드리면 .....
결과엔 이상이 없습니다. 10진수 2003은 16진수로 7d3(C/C++ 표현으로 0x07D3)입니다.
0x7D3를 10수로 다시 변환하면 7*16*16 + 13*16 + 3 = 2003이 되며,
이 값은 각각 상.하위 Byte에 0x07, 0xD3으로 보관됩니다(1 Byte로 표현할 수 있는 범위는 0 ~ 255임).
그러므로 LOBYTE(WYear)하면 하위 Byte값인 0xD3이 나오는 것은 당연한 일 입니다.
또한 Bmonth의 값의 '\f'는 'f'와는 다른 값이며, FF(Form Feed) 문자로 0x0C(10진수 12)을
의미합니다. Bday의 값 '\v'도 'v'가 아니며, VF(Vertical Tab) 문자를 나타내며
0x0B(10진수 11)을 의미합니다.
다시말하면 표현상의 차이일 뿐 값 자체엔 이상이 없습니다.
즐거운 하루 되시길.....
------------------------------------------------------------------------------------------
조진수 님이 쓰신 글 :
: BYTE Byear, Bmonth, Bday;
: WORD Wyear, Wmonth, Wday;
:
: DecodeDate(MyTime, Wyear, Wmonth, Wday);
:
: Byear = LOBYTE(Wyear);
: Bmonth = LOBYTE(Wmonth);
: Bday = LOBYTE(Wday);
:
: 시간을 읽으면 Wyear에는 2003 이 대입되고, Wmonth는 12 가 대입되고, Wday에는 11 이 대입 됩니다.
:
: 그런데 위의 방법과 같이 하면 Byear의 값에는 'D3'의 값이, Bmonth의 값에는 'f' 값이, Bday에는
:
: 'v'가 들어가네여..... 이걸 어떻게 가공 해야 되나여?? 답변부탁드립니다.
:
:
:
: 김용수 님이 쓰신 글 :
: : WORD형(16 Bit)를 BYTE(8 Bit)로 변환하는 방법은 Windef.h에 정의된 HIBYTE, LOBYTE Macro를 사용하면 됩니다.
: : <예>
: : WORD wData = 0x1234;
: : BYTE byHigh = HIBYTE( wData );
: : BYTE byLow = LOBYTE( wData );
: : Caption = AnsiString( "" ).sprintf( "%x %x", byHigh, byLow ); // "12 34"가 Caption에 나타남,
: :
: : 참고로 DWORD(DOUBLE WORD)를 상.하위 WORD로 나누는 HIWORD, LOWORD등의 Macro도 있으니
: : 참조하시기 바랍니다.
: :
: : #define MAKEWORD(a, b) ((WORD)(((BYTE)((DWORD_PTR)(a) & 0xff)) | ((WORD)((BYTE)((DWORD_PTR)(b) & 0xff))) << 8))
: : #define MAKELONG(a, b) ((LONG)(((WORD)((DWORD_PTR)(a) & 0xffff)) | ((DWORD)((WORD)((DWORD_PTR)(b) & 0xffff))) << 16))
: : #define LOWORD(l) ((WORD)((DWORD_PTR)(l) & 0xffff))
: : #define HIWORD(l) ((WORD)((DWORD_PTR)(l) >> 16))
: : #define LOBYTE(w) ((BYTE)((DWORD_PTR)(w) & 0xff))
: : #define HIBYTE(w) ((BYTE)((DWORD_PTR)(w) >> 8))
: :
: : 즐거운 하루 되시길....
: :
: : ----------------------------------------------------------------------
: : 조진수 님이 쓰신 글 :
: : : Word Wyear, Wmonth, Wday;
: : :
: : : MyTime = Now();
: : : DecodeDate(MyTime, Wyear, Wmonth, Wday);
: : :
: : : Word형을 Byte형으로 빠꿔서 시리얼로 보낼려고 하는데.... 잘안돼네여... 다른 글을 봐도 모르겟고...
: : :
: : : 답변 부탁드립니다.
|