16ºñÆ® 32ºñÆ® C¾ð¾î

MLbioinfo   
   Á¶È¸ 3969   Ãßõ 1    

옛날 16비트 컴퓨터 쓰던 시절의 소스코드를 32비트에서도 실행되도록 하고 싶습니다.
저는 비쥬얼스튜디오로 컴파일만 다시 하면 될줄 알았는데....


고친 부분은 대충 다음과 같습니다.

1. float huge a[13000];
여기서 huge가 무슨뜻인가요? 지워야 컴파일이 됩니다.

2. 배열 값을 불러올 때 floor이 double로 뱉어내니까 a[8000+ floor(b)] 같은 것들을 a[8000+ (short)floor(b)]로 바꿔줘야 합니다.
옛날엔 이런게 그냥 통과됐나 보네요;;

3. 주로 int로 선언되어 있는 변수들을 short 형으로 변경해줘야 합니다.
3가지 중에서 제일 특이한 건데...
int로 하면 결과가 엉망인데, short로 다 바꿔줘야 옛날 결과와 비슷하게 나오네요.. (그래도 결과는 조금 다르지만..)


16비트에서 잘 작동하던걸 32비트로 다시 컴파일할 때 고려할게 뭐가 있을까요?

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¼­ÇüÈ£ 2017-05
Á¤¸» ¿À·§¸¸¿¡ µé¾îº¾´Ï´Ù. huge.
1. ¸Þ¸ð¸® ¸ðµ¨¿¡ °üÇؼ­´Â ÀÌ ¸µÅ©¸¦ º¸½Ã¸é ÁÁÀ» °Í °°½À´Ï´Ù.
http://www.equestionanswers.com/c/near-far-huge-pointer.php

2. DOS¿¡¼­´Â int »çÀÌÁî°¡ 16ºñÆ®¿´½À´Ï´Ù. 32ºñÆ® À¯´Ð½º ½Ã½ºÅÛ¿¡¼­´Â int°¡ 32ºñÆ®¿´±¸¿ä.
64ºñÆ®¿¡¼­µµ ´ëºÎºÐ 4¹ÙÀÌÆ®ÀÎ °ÍÀ¸·Î ¾Ë°í ÀÖ½À´Ï´Ù. macOS Sierra¿¡¼­´Â 4¹ÙÀÌÆ®³×¿ä.
https://stackoverflow.com/questions/11438794/is-the-size-of-c-int-2-bytes-or-4-bytes

3. 2¹ø°ú °°Àº ÀÌÀ¯ÀÔ´Ï´Ù.
     
MLbioinfo 2017-05
´äº¯ °¨»çÇÕ´Ï´Ù ^^
°Þ°í ÀÖ´Â ³ª¸ÓÁö ¹®Á¦´Â ´ëºÎºÐ double <-> float ¹®Á¦·Î º¸À̳׿ä.


QnA
Á¦¸ñPage 1813/5687
2014-05   4988985   Á¤ÀºÁØ1
2015-12   1524992   ¹é¸Þ°¡
2017-06   3968   Áý¾Èû¼Ò
2019-10   3968   Èì³Ä
2016-07   3968   ·¹³ª
2018-06   3969   ½É¹ÙÆ®
2017-12   3969   ¿ÀÆÛ·¹ÀÕ
2020-07   3969   ÀÌÈñÁÖ
2017-08   3969   ³×ÀÌÃÄ
2018-09   3969   ¹Î»çÀå
2015-06   3969   ±èÁ¦¿¬
2017-12   3969   Dishy
2015-12   3969   ȸ·ÎÀïÀÌ
2021-05   3969   dNb0
2017-01   3969   »ßµ¹À̽½ÇÄÀÌ
2015-11   3969   ĸƾ¾Æ¸Þ¸®Ä«³ë
2019-10   3969   ¹Ì¼ö¸Ç
2015-10   3970   ÀÌÇØÇϸé¿À¡¦
2014-01   3970   ³ª·¡Áö±â
2015-04   3970   »ÇÄ¥ÀÌ
2017-08   3970   »ßµ¹À̽½ÇÄÀÌ
2014-05   3970   ±èÁø¿µJK