11. Direktif assembler¶
11.1. Label¶
label(INNER1)
Ini mendefinisikan label untuk digunakan dalam instruksi cabang. Dengan demikian di tempat lain dalam kode, b(INNER1) akan menyebabkan eksekusi berlanjut dengan instruksi setelah direktif label.
11.2. Mendefinisikan data inline¶
Direktif assembler berikut memudahkan penyematan data dalam blok kode assembler.
data(size, d0, d1 .. dn)
Direktif data membuat array nilai data dalam memori. Argumen pertama menentukan ukuran dalam byte dari argumen berikutnya. Oleh karena itu pernyataan pertama di bawah ini akan menyebabkan assembler menempatkan tiga byte (dengan nilai 2, 3 dan 4) ke dalam lokasi memori yang berurutan sementara yang kedua akan menyebabkannya memancarkan dua kata empat byte.
data(1, 2, 3, 4)
data(4, 2, 100000)
Nilai data yang lebih panjang dari satu byte disimpan dalam memori dalam format little-endian.
align(nBytes)
Sejajarkan instruksi berikutnya ke nilai nBytes. Instruksi ARM Thumb-2 harus disejajarkan dua byte, oleh karena itu disarankan untuk mengeluarkan align(2) setelah direktif data dan sebelum kode berikutnya. Ini memastikan bahwa kode akan berjalan terlepas dari ukuran array data.