Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[5398] Left Shift문제...
기타솔로 [] 2006 읽음    2005-10-19 07:56
아주 기초적인 프로그램을 짜다가 책과 실행결과가 틀려서 문의드립니다.
간단한 left shift와 righ shift문제인데, right shift는 문제가 없으나 left shift는 자리수때문에 원하는 결과를 얻지 못하고 있습니다.
예를 들어 16진수 0X1234가 있는데 4비트 left shift한 결과(2340)와 4비트 right shift(0123)한 결과를 얻고 싶다고 가정하면,
right shift는 0123으로 정확히 나오나 left shift를 하면 12340으로 나옵니다.
제 생각에는 변수의 크기 문제로 생각되는데 어떻게 하면 간단히 원하는 결과를 얻을 수 있을까요?

dev c++이며, 소스는...
-------------------------------------------
#include<stdio.h>
int main()
{
    int a, result;
    a = 0X1234;
   
    result = a << 4;
    printf("\n %04X", result);
    result = a >> 4;
    printf("\n %04X", result);
    printf("\n\n");
}
--------------------------------------------

+ -

관련 글 리스트
5398 Left Shift문제... 기타솔로 2006 2005/10/19
5401         Re:Re:Left Shift문제... 기타솔로 1772 2005/10/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.