찾다

 >  Q&A  >  본문

java - jvm中操作数栈的高位地址在上面还是下面

高洛峰高洛峰2802일 전717

모든 응답(2)나는 대답할 것이다

  • 迷茫

    迷茫2017-04-18 10:52:18

    이 글에 다른 사진을 봤는데 操作数栈 관련 사진은 모두 아래에서 위로

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:52:18

    먼저 스택에 int a와 int b가 연속적으로 저장된다면 b의 메모리 주소는 a의 주소보다 1바이트가 아니라 4바이트 커야 합니다!

    빅엔디안 모드나 리틀엔디안 모드는 바이너리부터 시작하겠습니다. 스택의 최소 데이터 저장 단위는 바이트이며, 리틀엔디안 모드에서는 바이트 단위의 저장이 고정되어 있습니다!

    리틀 엔디안 모드에서는 동일한 16진수 데이터 0x3F00이 00 3F 순서로 저장되고, 빅 엔디안 모드에서는 저장 순서가 3F 00으로 저장됩니다. 직설적으로 말하면, 하위 바이트가 먼저 저장되는지 아니면 상위 바이트가 먼저 저장되는지를 의미합니다.

    Java의 저장 모드는 컴퓨터의 CPU와 관련이 있지만 빅엔디안이든 리틀엔디안이든 관계없이 저장 모드와 분석이 반대이므로 동일한 int는 실행 여부에 관계없이 동일한 계산 결과를 갖게 됩니다. 빅엔디안 또는 리틀엔디안으로 저장됩니다.

    답변에 오류나 누락이 있으면 정정해주세요

    회신하다
    0
  • 취소회신하다