Warning: Use of undefined constant X - assumed 'X' (this will throw an Error in a future version of PHP) in /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php on line 7

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /home/tneutron/public_html/wp-content/themes/jarida_disabled/functions.php:7) in /home/tneutron/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1902
{"id":343,"date":"2024-08-16T04:35:47","date_gmt":"2024-08-15T21:35:47","guid":{"rendered":"http:\/\/www.tneutron.net\/mikro\/?p=343"},"modified":"2024-08-13T07:55:54","modified_gmt":"2024-08-13T00:55:54","slug":"sistem-pengalamatan-bahasa-assembler","status":"publish","type":"post","link":"https:\/\/www.tneutron.net\/mikro\/sistem-pengalamatan-bahasa-assembler\/","title":{"rendered":"Sistem Pengalamatan Bahasa Assembler"},"content":{"rendered":"

Pengalamatan Langsung<\/strong>
\nImmediate data
\nProses pengalamatan ini terjadi pada sebuah perintah ketika nilai operand merupakan data yang akan dip roses. Biasanya operand tersebut selalu diawali dengan tanda \u201e\u201f#\u201d seperti pada contoh di bawah ini:
\nMov A,#05H
\nMov A,#Data ; pada bagian di atas data telah didefinisikan sebagai bilangan ; tertentu (data EQU 05) contohnya bilangan 5.<\/p>\n

Pengalamatan Langsung Data (direct)
\n<\/strong>Proses pengalamat ini terjadi pada sebuah perintah ketika nilai operand merupakan alamat dari data yang akan diisi, dipindahkan atau diproses.
\nMov P0,A
\nPort 0 adalah salah satu I\/O dari AT89C51 yang mempunyai alamat 80H. Perintah pada contoh di atas dapat di tulis juga:
\nMov 80H,A<\/p>\n

Pengalamatan Tak Langsung
\n<\/strong>Proses pengalamat ini terjadi pada sebuah perintah ketika salah satu operand merupakan register berisikan alamat dari data yang akan diisi dan dipindahkan. Pengalamatan jenis ini biasa digunakan untuk melakukan penulisan, pemindahan atau pembacaan beberapa data dalam lokasi memori yang urutan beraturan. Jika proses ini dilakukan dengan menggunakan pengalamatan langsung , jumlah baris program yang akan diperlukan akan cukup panjang seperti contoh di bawah ini:
\nMov 50H, #08H
\nMov 51H, #08H
\nMov 52H, #08H
\nMov 53H, #08H
\nMov 54H, #08H
\nMov 55H, #08H
\nMov 56H, #08H
\nMov 58H, #08H<\/p>\n

Dengan digunakan system pengalamatan tak langsung, dapat diubah menjadi:<\/p>\n

Mov R0,#50H<\/p><\/blockquote>\n

Loop:<\/p>\n

Mov @R0,#08H<\/p>\n

Inc R0<\/p>\n

Cjne R0,#58H,loop<\/p><\/blockquote>\n

Dalam listing ini, R0 digunakan sebagai register yang menyimpan alamat dari data yang akan dituliskan. Dengan melakukan penambahan pada isi R0 dan mengulang perintah penulisan data ke alamat yang ditunjukan R0 hingga register ini menunjukan nilai 57H+1, atau 58H. AT89S51 mempunyai sebuah register 16 bit (DPTR) dan dua buah register 8 bit (R0 dan R1) yang dapat digunakan untuk melakukan penngalamatan tidak langsung.
\nContoh-contoh perintah menggunakan system pengalamatan tak langsung:
\nMov @R0,A ;R0 digunakan sebagai register penyimpan alamat
\nMov A,@R1 ;R1 digunakan sebagai register penyimpan alamat
\nAdd A,@R0 ;R0 digunakan sebagai register penyimpan alamat
\nMov @DPTR,A ;DPTR digunakan sebagai register penyimpan alamat
\nMov A,@A+DPTR ;DPTR digunakan sebagai register penyimpan alamat<\/p>\n

Pengalamatan Kode
\n<\/strong>Pengalamatan kode merupakan pengalamatan ketika operand merupakan alamat dari instruksi jump dan call (ACALL,JMP,LJMP dan LCALL). Biasanya operand tersebut akan menunjukkan ke suatu alamat yang telah di beri label sebelumnya.<\/p>\n

Pengalamatan Bit<\/strong>
\nProses pengalamatan ketika operand menunjukkan ke alamat RAM internal ataupun Register fungsi khusus yang mempunyai kemampuan pengalamatan secara bit (bit addressable).
\nBerdasarkan penulisannya, pengalamatan ini terdiri dari:
\n\uf0b7 Langsung menunjuk ke alamat bit
\nSetb 0B0H
\nPerintah ini memberikan logika 1 pada bit di alamat B0H dengan pengalamat secara bit.
\n\uf0b7 Menggunakan operator titik
\n\uf0b7 Menggunakan lambang assembler secara standard
\n\uf0b7 Menggunakan lambang assembler secara bebas
\nPengalamatan bit ialah penunjukkan menggunakan simbol titik (.)yang menunjuk alamat lokasi bit, baik dalm RAM internal atau perangkat keras.<\/p>\n","protected":false},"excerpt":{"rendered":"

Pengalamatan Langsung Immediate data Proses pengalamatan ini terjadi pada sebuah perintah ketika nilai operand merupakan data yang akan dip roses. Biasanya operand tersebut selalu diawali dengan tanda \u201e\u201f#\u201d seperti pada contoh di bawah ini: Mov A,#05H Mov A,#Data ; pada bagian di atas data telah didefinisikan sebagai bilangan ; tertentu (data EQU 05) contohnya bilangan …<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[174],"tags":[398,401,403,402,404,405,399,400,406,407],"class_list":["post-343","post","type-post","status-publish","format-standard","hentry","category-merancang-rangkaian-kontrol","tag-bahasa-assembler","tag-bahasa-assembler-8051","tag-bahasa-assembler-8086","tag-bahasa-assembler-89c51","tag-bahasa-assembler-mikrokontroler","tag-bahasa-assembler-mikrokontroler-at89s51","tag-bahasa-assembler-pdf","tag-bahasa-assembler-tutorial","tag-bahasa-assembler-doc","tag-bahasa-assembler-ppt"],"_links":{"self":[{"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/posts\/343","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/comments?post=343"}],"version-history":[{"count":1,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/posts\/343\/revisions"}],"predecessor-version":[{"id":2869,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/posts\/343\/revisions\/2869"}],"wp:attachment":[{"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/media?parent=343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/categories?post=343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tneutron.net\/mikro\/wp-json\/wp\/v2\/tags?post=343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}