웹 어셈블리 예제

다음은 C++, 이진 및 텍스트(선형 어셈블리 바이트코드)에 나와 있는 예제 함수입니다. mdn/웹 어셈블리 예제에서 새 릴리스에 대한 알림을 원하십니까? WebAssembly는 C++와 같은 고급 프로그래밍 언어의 대상이 되고 브라우저의 가상 시스템 내에서 실행되도록 하는 바이트 코드 표현입니다. Qt의 관점에서 웹 어셈블리는 또 다른 대상 플랫폼일 뿐입니다. Qt 5.13.0부터 선택된 관련 모듈을 위해 공식적으로 지원되는 대상 플랫폼입니다. 리눅스, macOS 및 Windows 호스트 플랫폼에서 바이너리 빌드를 다운로드하고 웹 브라우저 내에서 실행할 Qt 응용 프로그램을 빌드할 수 있습니다. 다음은 브라우저에서 실행 중인 Qt를 표시하기 위해 준비한 몇 가지 예제 및 데모입니다. 더 많은 예제는 나중에 여기에 추가됩니다. 당신은 webassembly.studio 또는 웹 어셈블리 탐색기위에 어떤 설치 헤드없이 그것을 밖으로 시도하려는 경우. 모든 고급 프로그래밍 언어는 프로세서에서 실행하기 위해 기계 코드로 변환됩니다. 프로세서 아키텍처의 종류가 다르기 때문에 각 아키텍처마다 서로 다른 기계 코드와 다양한 종류의 어셈블리가 필요합니다. WebAssembly JavaScript API를 사용하는 방법과 웹 페이지에서 wasm 모듈을 로드하는 데 사용하는 방법을 설명하는 몇 가지 예제를 살펴보겠습니다. MDN 웹 어셈블리 설명서와 함께 제공되는 코드 예제는 https://developer.mozilla.org/en-US/docs/WebAssembly 참조하세요.

이름에도 불구하고 WebAssembly는 특정 컴퓨터를 위한 것이 아니기 때문에 어셈블리 언어가 아닙니다. 브라우저용이며 브라우저에서 실행할 코드를 제공할 때 코드가 실행되는 컴퓨터 종류를 알 수 없습니다. WebAssembly는 인기있는 실제 하드웨어의 가장 일반적인 분모인 개념 적 기계의 언어입니다. 브라우저가 WebAssembly 코드를 다운로드하면 신속하게 모든 컴퓨터의 어셈블리로 전환할 수 있습니다. WebAssembly는 최신 웹 브라우저에서 실행할 수 있는 새로운 유형의 코드입니다 – 거의 네이티브 성능으로 실행되고 C/C++ 및 Rust와 같은 언어를 컴파일 대상과 함께 제공하는 컴팩트한 바이너리 형식을 가진 낮은 수준의 어셈블리와 같은 언어입니다. 웹에서 실행됩니다. 또한 자바 스크립트와 함께 실행되도록 설계되어 둘 다 함께 작동 할 수 있습니다. 웹 어셈블리 를 디자인하는 주요 목표 중 하나는 이식성이었습니다. 장치에서 응용 프로그램을 실행하려면 장치의 프로세서 아키텍처 및 운영 체제와 호환되어야 합니다. 즉, 지원하려는 운영 체제와 CPU 아키텍처의 모든 조합에 대해 소스 코드를 컴파일해야 합니다. WebAssembly를 사용하면 컴파일 단계가 하나뿐이며 모든 최신 브라우저에서 앱이 실행됩니다.

함수와 마찬가지로 선형 메모리는 모듈 내부에서 정의하거나 가져올 수 있습니다. 마찬가지로 모듈은 선택적으로 메모리를 내보낼 수도 있습니다. 즉, JavaScript는 새 WebAssembly.Memory를 만들고 가져오기로 전달하거나 인스턴스.prototype.export를 통해 메모리 내보내기를 수신하여 웹 Assembly 인스턴스의 메모리에 액세스할 수 있습니다. 여기에 행동에 응용 프로그램의 스크린 샷입니다 : 우리가 함께 작동 할 웹 앱은 fastq.bio, 자신의 DNA 시퀀싱 데이터의 품질의 빠른 미리보기를 과학자를 제공하는 대화 형 웹 도구입니다; 시퀀싱은 “문자”(즉, “문자”를 읽는 과정입니다.