c 언어 왼쪽 이동 과 오른쪽 이동 의 예시 상세 설명

논리 적 위치 이동,간단 한 이 해 는 물리 적 으로 위치 에 따라 좌우 로 이동 하고 양 끝 은 0 으로 보충 하 며 수치의 기호 문제 에 관심 이 없다 는 것 이다.
산술 이 위 는 마찬가지 로 물리 적 으로 위치 에 따라 좌우 로 이동 하고 양쪽 끝 은 0 으로 보충 하지만 기호 위치 가 바 뀌 지 않도록 해 야 한다.
산술 시 프 트 명령
산술 이동 명령 은 산술 왼쪽 이동 SAL(Shift Algebraic Left)과 산술 오른쪽 이동 SAR(Shift Algebraic Right)이 있 습 니 다.산술 시 프 트 명령 의 기능 설명 은 다음 과 같다.
(1)산술 왼쪽으로 이동 SAL 은 목적 조작 수의 낮은 위 치 를 높 은 위치 로 이동 시 키 고 비 어 있 는 낮은 위 치 를 0 으로 보충 합 니 다.
(2)산술 오른쪽으로 이동 SAR 은 목적 조작 수의 높 은 위 치 를 낮은 위치 로 이동 시 키 고 비 어 있 는 높 은 위 치 를 최고 위치(부호 위치)로 메운다.
논리 시 프 트 명령
이 그룹 명령 은 논리 왼쪽 이동 SHL(Shift Logical Left)과 논리 오른쪽 이동 SHR(Shift Logical Right)이 있 습 니 다.논리 적 왼쪽 이동/오른쪽 이동 명령 은 위치 이동 방향 만 다 르 고 위치 이동 후 비 어 있 는 위 치 는 0 을 보충 합 니 다.


결론:기호 유형 이 있 든 없 든 값 의 플러스 와 마이너스 에 관 계 없 이 모두 논리 적 왼쪽 이동 을 사용한다.


결론:기호 수가 있 으 면 값 이 플러스 든 마이너스 든 오른쪽으로 이동 할 때 사용 하 는 것 은 모두 산술 오른쪽으로 이동 한 다 는 것 을 의미한다.
의문:이 위 보 0 의 원칙 에 따라 왜 왼쪽 이동 은 모두 논리 적 인 이동 일 까?
질문:먼저"-8"과"8"이 컴퓨터 메모리 에서 의 값 을 보 세 요.
0xfffffff8
0x8
컴퓨터 가 모두 코드 에 따라 수 치 를 저장 하기 때문에 기호의 양 과 음 을 막론하고 왼쪽 이동 은 기호의 위치 에 영향 을 주지 않 고 오른쪽 이동 은 다르다.기호 수가 없 으 면 아무리 오른쪽으로 이동 해도 기호의 위치 에 영향 을 주지 않 지만 기호 수 논리 가 오른쪽으로 이동 할 때 높 은 위치 가 0 을 보충 하면 기호의 위 치 를 바 꾸 고 산술 오른쪽으로 만 이동 할 수 있다.
c 언어 왼쪽 이동 과 오른쪽 이동 에 관 한 예제 에 대한 상세 한 설명 은 여기까지 입 니 다.더 많은 c 언어 왼쪽 이동 과 오른쪽 이동 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기