본문 바로가기

프로그래밍 관련/프로그래밍 팁

[개발] 각종 진법 변환 계산기 (2진수, 8진수, 10진수, 16진수) ※ 요약 개발을 하거나 디자인(색상 코드)을 하다보면 진법 변환을 해야할 일이 생기는데, 필자는 어느 블로거가 만든 진법 변환기를 사용한다. 이 진법 변환기는 2진수, 8진수, 10진수, 16진수, 아스키코드/유니코드 등을 지원하며 진법 변환기가 블로그 페이지에 있다보니 북마크 해두고 필요할 때마다 접속해서 진법을 변환한다. ※ 링크 http://mwultong.blogspot.com/2008/02/16-2-10-8-hex-calc.html ※ 소개 아래는 사이트에 접속한 화면이다. 사용법은 직관적이므로 따로 설명하지 않겠으며 10진수, 16진수, 2진수, 8진수 등의 변환을 제공한다. 더보기
[개발] UAC 관계없이 파일 쓰기나 변경 가능한 폴더 - GetTempPath ※ 요약 UAC란 윈도우 비스타부터 추가된 보안을 위한 기능으로써, UAC가 켜져 있을 경우 윈도우가 설치된 시스템 드라이브(보통 C드라이브)에는 파일 쓰기나 파일 변경이 불가능하다. 이럴때는 프로그램을 관리자 권한으로 실행해도 되지만 UAC에 관계없이 파일 쓰기나 변경이 가능한 폴더 Temp 폴더에 작업을 하는게 여러모로 편리하고 안전하다. ※ 탐색기에서 temp 폴더 경로 구하기 탐색기 주소표시줄에 환경변수 %temp%를 입력하면 현재 시스템의 temp 폴더를 알 수 있다. 필자의 경우 C:\Users\사용자 이름\AppData\Local\Temp가 temp 폴더의 경로다. ※ 실행창에서 temp 폴더 경로 구하기 실행창에 환경변수 %temp%를 입력하면 temp폴더가 탐색기를 통해 열린다. ※ 윈도.. 더보기
[개발] EasyRGB - 각 종 색상 변환 공식 ※ 요약 필자는 대학생 시절 OpenCV를 이용한 영상처리를 공부한 적이 있고, 이 경험 바탕으로 가끔 영상처리를 이용한 프로그램 개발을 취미로 할때가 있다. 그러다보면 가끔 색상 변환을 해야할때가 있는데, OpenCV를 이용하면 간단하게 변환이 가능하지만 직접 구현해야 하는 경우엔 각각의 공식을 찾아야 한다. 필자도 신입때 직접 색상 변환을 해야해서 찾은 사이트가 있어 소개하고자 포스팅한다. ※ 사이트 링크 http://www.easyrgb.com/index.php?X=MATH ※ 변환 목록 XYZ -> RGBRGB -> XYZXYZ -> YxyYxy -> XYZXYZ -> Hunter-LabHunter-Lab -> XYZXYZ -> CIE-L*abCIE-L*ab -> XYZCIE-L*ab -> CIE.. 더보기
32비트, 64비트에서의 프로세스당 사용 가능한 최대 메모리 ※ 요약 이번 포스트의 내용은 32비트나 64비트 윈도우에서 프로세스당 사용 가능한 최대 메모리에 대한 내용이다. 윈도우를 기준으로 작성하였고, 리눅스에서는 아마 적용이 안될것으로 생각된다. ※ 프로세스가 각 비트에서 사용 가능한 최대 메모리32비트 : 2GB64비트 : 8TB ※ 설명책이나 학교에서 배운대로 라면 32비트는 2^32로써 4GB를, 64비트는 2^64로써 16EB의 주소 공간을 가질 수 있어야 하지만 위의 설명에서는 각각 2GB와 8TB만 사용할 수 있다고 하였다. 이는 각 프로세스가 할당 받은 가상 주소 공간은 분할되어 있고, 분할된 영역 중에 사용할 수 있는 메모리 공간이 각각 2GB와 8TB이기 때문이다.참고로 아래는 32비트일때 분할된 각 공간의 크기다. 유저 모드 파티션이 프로세.. 더보기
[MySQL] 지난 버전 다운로드 하기 ※ 요약 필자는 MySQL에서 제공하는 Connector/C를 이용하여 13년도 09월에 프로그램을 개발한 적이 있다. 이후 13년도에 만들어진 버전을 15년도에 나온 버전으로 업그레이드를 하였는데, XP에서 실행이 안되는게 아닌가!? 원래 XP에서도 잘 실행되던게, "프로시저 시작점 InitializeConditionVariable을(를) DLL KERNEL32.dll에서 찾을 수 없습니다."라는 메시지를 출력하며 실행이 안되었다. 그래서 다시 구버전을 찾으며 정리한 내용을 포스팅 하려고 한다. ※ 지난 버전 다운로드 방법 먼저 무슨 버전을 다운로드 할 지 정해야 한다.그러기 위해서는 Version Change History를 봐야하는데, Documentation 메뉴에서 볼 수 있다.필자는 Conne.. 더보기
BMP 헤더 정보 BMP 헤더 정보입니다. //비트맵 파일에 대한 정보(파일 헤드)typedef struct tagBITMAPFILEHEADER{ WORD bfType ; //"BM"이라는 값을 저장함 DWORD bfSize ; //바이트 단위로 전체파일 크기 WORD bfReserved1 ; //예약된 변수 WORD bfReserved2 ; //예약된 변수 DWORD bfOffBits ; //영상 데이터 위치까지의 거리} BITMAPFILEHEADER, FAR *LPBITMAPFILEHEADER , *PBITMAPFILEHEADER; typedef struct tagBITMAPINFOHEADER{ DWORD biSize; //이 구조체의 크기 LONG biWidth; //픽셀 단위로 영상의 폭 LONG biHeight;.. 더보기