**Berkas COM** adalah format file biner murni yang dapat dijalankan dari Windows atau dieksekusi DOS. Berkas COM adalah salah satu nama domain tingkat atas yang dapat digunakan saat memilih nama domain. Ini biasanya mewakili entitas yang memiliki nama domain sebagai organisasi komersial. Berbeda dengan format berkas EXE, berkas COM relatif lebih kecil dan lebih cepat dibanding berkas EXE. Berbeda dengan file EXE yang sudah familiar bagi kebanyakan orang, yang memiliki header 32 bit di awal. Salah satu tujuan header adalah untuk menyimpan informasi relokasi untuk berpindah antar segmen 64 bit. Berkas COM tidak memiliki informasi ini, sehingga ukuran programnya dibatasi hingga 64 kilobit.

Dalam sistem operasi VAX milik Digital Equipment Corporation (DEC) tahun 1970-an, berkas COM digunakan sebagai ekstensi nama untuk file teks yang berisi perintah untuk dikeluarkan ke sistem operasi (mirip dengan kumpulan file). Dengan diperkenalkannya CP/M (Sistem Operasi Komputer Mikro), jenis file yang umumnya dikaitkan dengan ekstensi COM diubah menjadi file yang dapat dieksekusi. Konvensi ini kemudian dibawa ke DOS. Bahkan dengan diperkenalkannya format berkas EXE yang lebih umum, berkas COM sih tersedia dan umum digunakan di DOS.

Domain .COM adalah salah satu dari banyak ekstensi domain. Ekstensi domain .COM memiliki komersial untuk pebisnis. Domain ini merupakan domain pertama dan terpopuler yang pernah ada. Domain .COM bersifat internasional, jadi siapa saja bisa menjadi miliknya. Ekstensi domain ini  dikenal dan dipercaya oleh orang-orang di seluruh dunia, sehingga ruang domain Anda dapat diakses dari mana saja di dunia, sehingga memungkinkan Anda menarik lebih banyak pengunjung situs web. Selain itu, ekstensi domain ini murah.

Format berkas COM
-----------------

Format file COM adalah format biner yang dapat dieksekusi  yang digunakan oleh Microsoft Windows atau MS-DOS. Struktur ini hanyalah sekumpulan instruksi, hal ini tidak memiliki header dan tidak berisi metadata standar. Seluruh data dan kode yang disimpan hanya dalam satu segmen, dengan ukuran biner maksimal 64 kilobit. Format berkas ini tidak akan berubah saat dijalankan ulang. Oleh karena itu, sistem operasi memuatnya pada alamat yang telah ditentukan sebelumnya.

Meskipun format file sama untuk DOS dan CP/M, berkas COM tidak kompatibel antara kedua sistem operasi tersebut. Berkas DOS COM berisi instruksi x86 dan kemungkinan panggilan sistem DOS, dan file CP/M COM berisi instruksi 8080 dan panggilan sistem CP/M. Berkas COM di DOS mengatur semua register segmen x86 ke nilai yang sama dan mengarahkan register SP *(stack pointer)* ke offset kata terakhir yang tersedia dalam segmen 64 kilobit pertama (biasanya FFFEh), atau yang dimuat setel ke memori maksimum  yang tersedia ukuran dalam blok program. Untuk program dan tumpukan minimal 256 bit, mana saja yang lebih kecil, tumpukan dimulai pada awal segmen memori yang sesuai dan bekerja ke bawah dari sana.

Contoh berkas COM
-----------------

Nama domain (termasuk nama domain, zona yang di-hosting, dan data) terdiri dari serangkaian label yang dipisahkan oleh titik. Setiap label dapat berukuran hingga 63 byte. Panjang total nama domain tidak boleh melebihi 255 byte, termasuk titik. Nama file boleh diakhiri dengan .COM, tetapi tidak boleh dalam format sederhana seperti yang ditunjukkan di atas. Hal ini ditunjukkan dengan angka ajaib di awal file. Misalnya, file DR DOS 6.0, COMMAND.COM sebenarnya adalah file DOS yang dapat dieksekusi, karena dua bit pertama adalah inisial MZ (4Dh 5Ah) Mark Zbikowski.

Berikut kode ASM: 

```
[BITS 16]           ;Set code generation to 16 bit mode
[ORG 0x0100]        ;Set code start address to 0100h

[SEGMEN .text]      ;Main code segment
    mov ah, 9 ; DOS print string function
    mov dx, hello
    int 21h
    ;Exit to DOS
    mov ah, 4ch
    int 21h
[SEGMENT .data]     ;Initialised data SEGMENT
hello:  db   'Hello, .COM progammer!',13,10,'$'
```

Referensi
---------

1. ↑  "What is a .COM program?". *www.mitsco.freeservers.com*. Diakses tanggal 2024-02-20.
2. ↑  "COM file". *Wikipedia* (dalam bahasa Inggris). 2024-01-06.
3. ↑  Kominfo (2022-02-01). "Diskominfo". *Diskominfo* (dalam bahasa Inggris). Diakses tanggal 2024-02-21.
4. 1 2 3  Umar, Muhammad (2021-06-29). "COM - Format File Perintah DOS". *docs.fileformat.com*. Diakses tanggal 2024-02-20.
5. ↑  "Format nama domain DNS - Amazon Route 53". *docs.aws.amazon.com*. Diakses tanggal 2024-02-20.