임베디드 프로그래밍  

         
전체 기타 | WinCE | Delphi | VisualC | ARM | Media | SE | 마리오네트 | Java | wdm | JTAG | 영상처리 | 인증 | 질문/답변 | H/W | 알고리즘 | Platform | .net | VB | PPC | Network | android | QT | WWW | Linux |
Little Endian과 Big Endian 간의 변환 함수 작성법
하창호03-18 17:01 | HIT : 7,099
It is pretty easy to reverse a multibyte integer if you find you need the other format. A single function can be used to switch from one to the other, in either direction. A simple and not very efficient version might look as follows:
    Function Reverse (N:LongInt) : LongInt ;
     Var B0, B1, B2, B3 : Byte ;
    Begin
        B0 := N Mod 256 ;
        N  := N Div 256 ;
        B1 := N Mod 256 ;
        N  := N Div 256 ;
        B2 := N Mod 256 ;
        N  := N Div 256 ;
        B3 := N Mod 256 ;
        Reverse := (((B0 * 256 + B1) * 256 + B2) * 256 + B3) ;
    End ;

A more efficient version that depends on the presence of hexadecimal numbers, bit masking operators AND, OR, and NOT, and shift operators SHL and SHR might look as follows:
    Function Reverse (N:LongInt) : LongInt ;
     Var B0, B1, B2, B3 : Byte ;
    Begin
        B0 := (N AND $000000FF) SHR  0 ;
        B1 := (N AND $0000FF00) SHR  8 ;
        B2 := (N AND $00FF0000) SHR 16 ;
        B3 := (N AND $FF000000) SHR 24 ;
        Reverse := (B0 SHL 24) OR (B1 SHL 16) OR (B2 SHL 8) OR (B3 SHL 0) ;
    End ;

하창호   2004/03/18 
big-endian and little-endian

빅 엔디안과 리틀 엔디안은 컴퓨터 메모리에 저장된 바이트들의 순서를 설명하는 용어이다. 빅 엔디안은 큰 쪽 (바이트 열에서 가장 큰 값)이 먼저 저장되는 순서이며, 리틀 엔디안은 작은 쪽 (바이트 열에서 가장 작은 값)이 먼저 저장되는 순서이다. 예를 들면, 빅 엔디안 컴퓨터에서는 16진수 "4F52"를 저장공간에 "4F52"라고 저장할 것이다 (만약 4F가 1000번지에 저장되었다면, 52는 1001번지에 저장될 것이다). 반면에, 리틀 엔디안 시스템에서 이것은 "524F"와 같이 저장될 것이다. (만약 52가 1000번지에 저장되었다면, 4F는 1001번지에 저장될 것이다).
 
하창호   2004/03/18 
빅엔디언은 큰수쪽을 작은번지에
리틀엔디언은 작은수쪽을 작은번지에
 


11  Delphi :: 동적 Database 연결과 동적 Table 생성 예제    하창호 2008·04·24 5466
10  Delphi :: MSSQL 2005 와 연동시 ntwdblib.DLL 에러에...    하창호 2008·04·24 5822
9  Delphi :: MS SQL Free 2005 Download    하창호 2008·04·23 3585
8  Delphi :: SQL DDI 문중 CREATE TABLE 예제  …1  하창호 2008·02·29 3347
7  Delphi :: 증권 관련 업체코드 검색 및 파일 로딩 예제    하창호 2005·05·02 4334
6  Delphi :: [매직포토스] DIB 사용 예제    하창호 2005·02·05 5053
5  Delphi :: AssignFile, OpenDialog, Readln, Clo...    하창호 2004·03·24 5001
4  Delphi :: Auto Keyboard & Auto Mouse  …1  하창호 2004·03·18 4913
 Delphi :: Little Endian과 Big Endian 간의 변환 함...  …2  하창호 2004·03·18 7099
2  Delphi :: idHttp Control 사용시 403 Forbidden er...  …2  하창호 2004·03·08 7734
1  Delphi :: [URL] Internet Direct (Indy) Open S...    하창호 2004·02·10 3496
1
   
Copyright 1999-2018 Zeroboard / skin by GGAMBO
....