NEG 명령어에 대해 알고 싶습니다. 오버플로 플래그에도 영향을 줍니까? 그것이 오버 플로우 플래그에 영향을 미치는지 확인하십시오.어셈블리 언어에서 NEG 명령어가 오버플로 플래그를 설정합니까
0
A
답변
2
지시 사항을 알고 싶다면 참조 설명서를 참조하십시오.
essential reference, namely the Intel instruction set manual은 NEG 명령에 대해 이렇게 말한다 :
Flags Affected
The CF flag set to 0 if the source operand is 0; otherwise it is set to 1.
The OF, SF, ZF, AF, and PF flags are set according to the result.
그래서 분명히 인 NEG 명령이 세트 오 플래그; 따라서 은 OP의 원래 질문 인 O 플래그 인에 영향을줍니다. 그리고 그것이 실행될 때마다 그렇게합니다. (사람들은 "변하지 않았다"와 "설정되지 않았다"를 혼동해서는 안된다.)
특정 참고 매뉴얼은 O가 0 또는 1로 설정된 때를 나타내는 특정 알고리즘을 제공하지 않습니다. 그러나 Intel CPU는 2의 보수 시스템입니다. 빼기 명령은 정확히 같은 말을 사용합니다. NEG X는 (0 SUBTRACT X)와 같습니다. 따라서 NEG는 (0 SUBTRACT X)에 대해 "오버플로"에 따라 O 비트를 설정해야합니다. X가 0x8000000 일 때 O를 설정합니다.
OF (bit 11) Overflow flag
— Set if the integer result is too large a positive number or too small a
negative number (excluding the sign-bit) to fit in the destination operand;
cleared otherwise. This flag indicates an overflow condition for signed-integer
(two’s complement) arithmetic
대한 우리의 이해를 확인 :
Intel Basic Archiecture Manual를 검사, 우리는 조금의이 설명을 찾을 수 있습니다.
관련 문제
- 1. 어떤 명령어가 piledriver에서 설정합니까?하지만 불도저가 아닙니다.
- 2. 어셈블리 언어에서 비트를 반복적으로 역전합니다.
- 3. IAR ARM 컴파일러에 이상한 어셈블리 명령어가 있습니다.
- 4. ARM64 (iOS)의 인라인 어셈블리 명령어가 실패합니다.
- 5. 8086 어셈블리 - 오버플로 나누기
- 6. 어셈블리 오버플로 감지?
- 7. 어셈블리 언어의 오버플로 나누기
- 8. SPARC 어셈블리, C 플래그를 설정
- 9. sqlalchemy 표현식 언어에서 제약 조건을 어떻게 설정합니까?
- 10. 어셈블리 언어에서 점프 및 비교 사용하기
- 11. 어셈블리 언어에서 FAT 테이블을 읽는 방법
- 12. ARM 어셈블리 언어에서 c 함수 printf 호출
- 13. 어셈블리 언어에서 "짧은"점프는 무엇을 의미합니까?
- 14. MARIE 어셈블리 언어에서`Skipcond`는 어떻게 작동합니까?
- 15. 어셈블리 언어에서 REPE 및 SCASB를 사용하여
- 16. 어셈블리 언어에서 점프하는 곳으로 돌아가는 방법
- 17. bx lr은 ARM 어셈블리 언어에서 무엇을합니까?
- 18. x86 어셈블리 언어에서 중첩 루프를 만드는 방법
- 19. 나누기 오버플로 오류 어셈블리 emu8086
- 20. 녹의 정수 오버플로 플래그를 어떻게 반환합니까?
- 21. cmp 0x84,0x30이 오버플로 플래그를 트리거하는 이유는 무엇입니까?
- 22. 어떻게 cmake로 GDB 디버그 플래그를 설정합니까?
- 23. 포인터와 배열 사이의 효율성 (적은 어셈블리 명령어가 덜 소요되지 않음)
- 24. 8051 어셈블리 프로그래밍 언어에서 프로 시저를 선언 할 수 없습니다.
- 25. 는 C 코드 (GCC)의 프로그램 섹션 어셈블리 언어에서
- 26. 라이브러리 함수 (C)가 GNU 어셈블리 언어에서 어떻게 호출합니까?
- 27. 인텔 8086 어셈블리 언어에서 부호 비트가 양수로 표시되는 이유는 무엇입니까?
- 28. LC-3 어셈블리 언어에서 특정 위치의 값을 메모리에 저장하려면 어떻게해야합니까?
- 29. 어셈블리 프로그래밍 언어에서 텍스트를 한 줄 아래로 어떻게 이동합니까?
- 30. 누가 Emacs에서 내 파일에 수정 된 플래그를 설정합니까?
여기서 질문하고 대답을 기다리는 대신 명령어 세트 참조를 체크인하는 것이 어떻습니까? – Jester
나는 거기에서 보았지만 거기에서 얻는 것이 정말로 어려웠다. 단지 1 ~ 2 라인의 답이 필요하다. 나는 이걸 처음 들었다. –