2009-03-07 7 views
11

기계가 WORD과 항상 같거나 컴퓨터 아키텍처에 종속되어 있습니까? 단어의 의미는 WORD이나 일반적으로 적용 할 수 있습니까?WORD는 몇 비트이고 다른 아키텍처에서는 상수입니까?

+1

winapi에서 말하는 단어는 여전히 16 비트 Windows 및 따라서 16 비트로 고정되며 큰 컴퓨터 크기의 아키텍처에서도 마찬가지입니다. 따라서 Windows HLL 프로그램에서 일반적으로 단어는 16 비트이므로 문맥에 민감합니다. Guffa가 이미 말했듯이 x86 어셈블러에는 여전히 16 비트 비티가 존재합니다. –

답변

23

기계어 크기는 아키텍처에 따라 다르지만 운영 체제에서 응용 프로그램을 실행하는 방법도 다릅니다.

예를 들어, 응용 프로그램은 64 비트 응용 프로그램 (64 비트 마인 워드 사용) 또는 32 비트 응용 프로그램 (32 비트 시스템 워드 사용) 중 하나로 실행될 수 있습니다. 따라서 기계 단어의 크기는 동일한 기계에서도 다를 수 있습니다.

WORD이라는 용어는 사용 방법에 따라 다른 의미를 갖습니다. 기계어 또는 특정 크기의 유형을 의미 할 수 있습니다. x86 어셈블리 언어에서 WORD, DOUBLEWORD (DWORD) 및 QUADWORD (QWORD)은 기계어 크기에 관계없이 2, 4 및 8 바이트 크기로 사용됩니다.

10

단어는 일반적으로 CPU의 "기본"데이터 크기입니다. 즉, 16 비트 CPU에서 워드는 16 비트이고 32 비트 CPU에서는 32 비트입니다.

물론 워드가 16 비트 폭인 x86은 예외입니다 (x86은 원래 16 비트 CPU이기 때문에). DWORD는 32 비트 CPU이기 때문에 32 비트입니다. QWORD는 64 비트입니다 (이제는 64 비트 확장이 볼트로 고정되어 있기 때문입니다)

+2

32 비트 컴퓨터에서 QWORD를 사용할 수 없다는 뜻입니까? – selurvedu

+2

@selurvedu 예전에 댓글을 달았지만 앞으로 올 수도있는 사람들을 위해; 가능할 수 있습니다. Intel 프로세서는 QWORD를 사용할 수있는 64 비트 MMX 레지스터를 사용하는 경향이 있으며 항상 엔디안을 염두에두고 64 비트 데이터를 메모리에서 읽고 쓸 수 있습니다. –

+0

Endianness에 대한 @ SomeGuy의 관점에서 [this post] (https://stackoverflow.com/q/7865511/2636454)는이를 이해하는 데 도움이됩니다. – GDP2

3

기계 아키텍처에 따라 다릅니다. This 문서에서 이에 대한 몇 가지 기본 사항을 설명합니다.

1

단어에 대한 16 비트 (2 바이트)는 x86에서 보편적입니다.

0

필자가 생각하기로는 WORD는 한 동작 (특정 컴퓨터에서)으로 CPU에 넣을 수있는 비트의 양이므로 8 비트 아키텍처에서는 8 비트이고 현대의 64 비트 아키텍처 그것은 64 비트입니다.

+1

8 비트 랜드에서 우리는 바이트를 의미 할 때 단어를 말하지 않았습니다. 단어의 일반적인 정의는 9 비트 바이트와 18 비트 단어가있는 시스템에서도 간단히 "2 바이트"였습니다. PDP-10은 거기에 마음이 온다. – RBerteig

2

예.

좋아, 좀 더 명확하게하자. 우리가 기억의 말을 이야기한다고 가정하면, 두 가지 넓은 정의가 있습니다.

먼저 단어는 하드웨어에서 원자 적으로 액세스 할 수있는 단일 항목의 자연 크기입니다. 이것은 플랫폼에 의존하는 크기이지만 대개 16, 32 또는 64 비트이지만 다른 크기가 야생에서 발견되었습니다.

두 번째로 16 비트 값을 의미하는 경우가 많습니다. 이 컨텍스트에서 DWORD는 32 비트 값을 의미하는 것으로 나타납니다. 이 사용법은 x86 플랫폼, 특히 Windows에서는 일반적이지만 DEC PDP-11 및 VAX 및 Motorola 68000 자손에서도 사용되었습니다. 당신은 알고 있었다과 86 가족 이외의 기계 구조입니다 : 의도 된 사용이다

텔링은

1

것을 약 32 비트 thiss 비트 및 64 비트에 'yappin 모든 당신 젊은이 ... 상황에 따라 달라집니다. PDP-11은 40 비트 단어를 가지고 있습니다.

그러나 가장 간단한 대답은 Wikipedia을 검색하는 것입니다.

+0

누군가 유머 감각을 잃어 버렸거나 명성 점수를 없애야 만 하는가? 어느 쪽이든 재미있게 보내십시오. –

+0

PDP-11에는 16 비트 단어가 있습니다. PDP-10 (DEcSystem-10)은 36 비트 단어를 가지고 있습니다. 나는 40 비트 단어를 가진 DEC 아키텍처에 대해 알지 못한다. –

+0

PDP-11 (적어도 RT-11을 실행하는 사람들이지만 다른 DEC OS에서도 사용되었다고 생각합니다)은 6.3 파일 이름을 세 단어로 된 Rad50으로 알려진 이상한 문자 세트를 사용했습니다. 워드. DEC는 기발한 데이터 패킹을 좋아했습니다 ;-) (저는 사무실에 PDP-11이 있습니다.) – RBerteig

1

작은 글자로 된 "단어"는 아키텍처에 따라 다릅니다.

Windows SDK에 정의 된 대문자로 된 "WORD"는 16 비트입니다.

마찬가지로 : "DWORD"- (더블 워드) 32 비트. "QWORD"... 64 비트.