[ÇÁ·Î±×·¥] 0.1 ÀÌ Áõ°¡ÇÒ¶§ ¸¶´Ù 16Áø¼ö °ªÀÌ ¿Ã¶ó °¡´Â ·ÎÁ÷

   Á¶È¸ 8329   Ãßõ 0    

안녕하세요.

제가 멍청해서 말로 설명하기가 힘들어서 아래 사진을 첨부 했습니다.

0.1 부터 01 0E 로 시작 합니다.

0.1 씩 증가 할때 마다 1자리 2자리 16진수 값이 +1 씩 증가 합니다.

0.2 = 02 00F

둘째자리가 다 되었을때 (FF) 16진수가 한자리 증가 합니다.

    FF 0C (16진수 둘째자리 끝)
01 00 FE (16진수 셋째자리 처음)

이런식으로 둘째자리가 255 (FF) 이 되었을때 계속 16진수가 한자릿수가 늘어 나는 구조 입니다.

25000.5 이면 25만 5번째 16진수 값을 찾고자 하는데

FOR 문을 돌려 볼까 배열을 이용해서 해볼까 이래 저래 생각해봤는데 실력이 미천하여 어떤식으로 해야 할지

로직이 떠오르지 않아 우선 자문을 구해보고자 글을 올립니다. 흑흑흑


ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
³Ê¹« ¹æ¹ýÀÌ ¸¹¾Æ¼­...............;;;;

0.1 ÀÌ Áõ°¡µÇ´Â ½ÃÁ¡Àº ¾Æ½Ã´Â°Å¶ó°í °¡Á¤ÇÏ°í...(Áï...0.1 ÀÌ Áõ°¡µÇ´Â ½ÃÁ¡¿¡ ÁÂÃø 16Áø¼ö ¿¬»êÀ» ÇÏ´Â ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ´Ù´Â ÀüÁ¦ÇÏ¿¡)

ÁÂÃø 16Áø¼ö µé¾î°¡´Â °÷À» int Çü º¯¼ö X ¿¡ ´ã°í...(ÃʱⰪÀÌ 0x010E = 270)
0.1 Áõ°¡½ÃÁ¡¿¡
A1 = (int) (X / 256) À» Çϸé ÁÂÃø°ª¸¸ ³ª¿É´Ï´Ù.
B1 = X mod 256 ÇÏ¸é ¿ìÃø°ª¸¸ ³ª¿À±¸¿ä.

B1 ¿¡ ÇÊ¿äÇÑ ¿¬»ê ÇÏ°í...
A1 ¿¡ +1 ÇØÁÖ°í

X = A1 * 256 + B1 ÇÏ¸é µÇÁö ¾Ê³ª¿ä?

È­¸é Ãâ·Â½Ã¿¡´Â X ¸¦ 16Áø¼ö ÇüÅ·ΠÃâ·ÂÇÏ¸é µÇ±¸¿ä.

±×³É ½»~ º¸°í ´ñ±Û ´Þ¾Æµå¸° °Å¶ó...¿À·ù°¡ ÀÖÀ» ¼ö ÀÖ±ä ÇÕ´Ï´Ù. ;;;
     
±×³ªÀú³ª ´äÀº 03 D0 A3 ÀÎ°Í °°³×¿ä.
°è»ê±â·Î ´ëÃæ µÎµé°ÜºÃ½À´Ï´Ù. (´ëÃæ µÎµé±ä °Å¶ó Ʋ·ÈÀ»¼öµµ............ÇÏÇÏ~)
¹«¾Æ 2014-12
void func(int value)
{
  if(value>255)  func(value/256);
  printf("%02X ", value%256);
}

void main()
{
  for(int i=1; i<10000; i++)
  {
    func(i);
    printf("%02X    %lf\n", (i+0x0d)%256, i/10.0);
  }
}

ÀÌ·¯¸é µÇÁö¾ÊÀ»±î ½ÍÀºµ¥¿ä.. ±Ùµ¥ Áú¹®¿¡ Á» ¾Ö¸ÅÇѺκÐÀÌ ÀÖ±äÇÕ´Ï´Ù.
¹«¾Æ 2014-12
Á» ¾Ö¸ÅÇÑ ºÎºÐ (¼³¸íÀÌ ÃæºÐÇÏÁö ¾ÊÀº ºÎºÐ)À» À§ÀÇ Ç¥¸¦ À¯ÃßÇÏ¿© ´Ù½Ã ¹Ù²ãº» ÄÚµå ÀÔ´Ï´Ù.

int func(int value)
{
int ret = 0;
if (value > 255)
{
ret = func(value / 256);
}
printf("%02X ", value % 256);
return ret + (value % 256);
}

void main()
{
for (int i=1; i<10000; i++)
{
int ret = func(i);
printf("%02X    %lf\n", (ret + 0x0d) % 256, i / 10.0);
}
}
¹«¾Æ 2014-12
for (int i = 250005; i<250006; i++) ³Ö°í µ¹·Áº¸´Ï
03 D0 95 75 °¡ ³ª¿À³×¿ä.

´Ù Â¥³õ°í º¸´Ï äũ¼¶ ±¸ÇÏ´Â °Í À̳׿ä.
äũ¼¶Àº ¸®Ä¿½ÃºêÇÏ°Ô ÇÏÁö¸»°í while ¹®À¸·Î Çصµ µÉµí ÇÕ´Ï´Ù.
     
+1
¿ÀÁØÈ£ 2014-12
´äº¯ °¨»çÇÕ´Ï´Ù. ÈæÈæ
¸ÛûÇÑ ¸Ó¸®°¡ ¹®Á¦ÀÔ´Ï´Ù. ÈæÈæ
seitiÂÀes 2014-12
±Ùµ¥... Àú´Â ´Ù¸¥´äÀÌ ³ª¿Í¼­...

º¸´Ï±î Á¦°¡ ·ÎÁ÷À» À߸øÀÌÇØÇÑ°Í °°³×¿ä...

·ÎÁ÷¿¡¼­  doublebyte2 * 256 °ú doublebyte1 ÀÇ °ü°è¿¡ À־

¿¹¸¦ µé¾î 10 FF ¿¡¼­ ´ÙÀ½¼ö´Â ¾î¶»°Ô µÇ³ª¿ä?

12 00 Àΰ¡¿ä? ¾Æ´Ô ´õºí¹ÙÀÌÆ® µÎ°³°¡ ¾Æ¹«»ó°ü¾ø´Â °Ç°¡¿ä"?

±×·¡¼­ 10 FF ´ÙÀ½ ¼ö°¡ 11 00?

±×¸®°í 3¹ø° ´õºí¹ÙÀÌÆ®¿Í ³×¹ø° ´õºí¹ÙÀÌÆ®ÀÇ °ü°è´Â ±×³É °è¼Ó 1¾¿ ´Ã¾î³ª´Â°Í ¹Û¿¡ ¾ø³ª¿ä?
     
¹«¾Æ 2014-12
¿ÞÂÊ ¹ÙÀÌÆ® µéÀº ±×³É ÀԷ°ª*10 ¿¡ ´ëÇÏ¿© 16Áø¼ö Ç¥ÇöÀÌ°í
¿À¸¥ÂÊ ¹ÙÀÌÆ®´Â 16Áø¼ö Ç¥ÇöµÈ °ÍµéÀ» ¹ÙÀÌÆ® ´ÜÀ§·Î ´õÇÏ°í + 0x0d °ªÀ» ¹ÙÀÌÆ®·Î Ç¥ÇöÇÑ Ã¼Å©¼¶ ÀÎ °Í °°½À´Ï´Ù.
01 + FF + 0D => 10D => 0D
02 + 00 + 0D => 0F => 0F
03 + D0 + 95 + 0D = 175 => 75
          
seitiÂÀes 2014-12
ÀÌ°Ô °¡Àå ¸»ÀÌ µÇ´Â°Í °°³×¿ä... 16Áø¹ýÀ̶ó´Â°ÍÀÌ ¸»ÀÌ µÇ´Â°Íµµ Âü ¸¹ÁÒ...

À§¿¡ ¿ø±Û ºÎºÐ¿¡ ¼³¸íÀÌ Á» ¸ðÀÚ¶ú¾ú³ªº¸³×¿ä... (¾îµð±îÁö³ª ÀúÈñµéÀÇ °¡Á¤)
À±¼º¿Á 2015-01
ÂÁ.... ¹Úµ¿±Ç´ÔÀÌ ¸Â´Â°Å °°³×¿ä
·ÎÁ÷À» ³ªÁß¿¡ º¸°í¼­µµ Ʋ¸®´Ù´Ï

±×³É ¿¢¼¿·Î Çصµ ´äÀÌ ¸Â´Â°Ç °ËÁõÇ߳׿ä
A1=0.1
B1=MID(DEC2HEX(SUM(A1*10 ),6), 1,2)
C1=MID(DEC2HEX(SUM(A1*10 ),6), 3,2)
D1=MID(DEC2HEX(SUM(A1*10 ),6), 5,2)
E1=DEC2HEX(MOD(SUM(HEX2DEC(B1) + HEX2DEC(C1) +HEX2DEC(D1)) + 13, 256),2)

0.1 00 00 01 0E
0.2 00 00 02 0F
0.3 00 00 03 10
0.4 00 00 04 11
25.5 00 00 FF 0C
25.6 00 01 00 0E
51.1 00 01 FF 0D
51.2 00 02 00 0F
76.7 00 02 FF 0E
76.8 00 03 00 10
102.3 00 03 FF 0F
102.4 00 04 00 11
25000.5 03 D0 95 75
 
ÀÌ·¸°Ô ¹«½ÄÇÏ°Ô Çغó׿ä


QnA
Á¦¸ñPage 4688/5683
2014-05   4955112   Á¤ÀºÁØ1
2015-12   1491625   ¹é¸Þ°¡
2014-08   8327   ¹äÇѳ¢
2004-03   8327   Á¤ÁÖȯ
2014-01   8327   Subi
2010-04   8327   ¹Ú
2004-03   8327   Â÷Æò¼®
2010-10   8328   ¼­¿ïI±èµ¿¼ö
2010-05   8328   ¶¯°¨
2004-07   8328   ½Å¹Îö
2010-01   8328   Âü¼¼»ó¸Í±Û±â
2010-06   8328   ±è1Á¤2¿í
2010-07   8328   º¸¶ó¸Å
2009-03   8328   akfalles
2010-10   8329   Æ÷½º¼Å´Ï
2016-10   8329   À嵿°Ç2014
2003-07   8329   ±èÅ°æ(curs¡¦
2012-01   8329   ¹Ú»ó¹ü
2010-11   8329   ÃÖ¿ø½ÃÀÍ
2011-03   8329   ÀÌâÁØ
2010-08   8329   ¹Ì¼ÒÂï»ç
2011-06   8330   ³ª³Ê¿ì¸®