汇编AND操作符

<pre><code class="lang-bash">section .text global _start ;must be declared for using gcc _start: ;tell linker entry point mov ax, 8h ;getting 8 in the ax and ax, 1 ;and ax with 1 jz evnn mov eax, 4 ;system call number (sys_write) mov ebx, 1 ;file descriptor (stdout) mov ecx, odd_msg ;message to write mov edx, len2 ;length of message int 0x80 ;call kernel jmp outprog evnn: mov ah, 09h mov eax, 4 ;system call number (sys_write) mov ebx, 1 ;file descriptor (stdout) mov ecx, even_msg ;message to write mov edx, len1 ;length of message int 0x80 ;call kernel outprog: mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel section .data even_msg db 'Even Number!' ;message showing even number len1 equ $ - even_msg odd_msg db 'Odd Number!' ;message showing odd number len2 equ $ - odd_msg </code></pre>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


<pre><code class=\"lang-bash\">section .text global _start;must be declared for using gcc _start:;tell linker entry point
<pre><code class=\"lang-bash\">section .text global _start;must be declared for using gcc _start:;tell linker entry point
<pre><code class=\"lang-bash\">section.text global _start;must be declared for using gcc _start:;tell linker entry point
<pre><code class=\"lang-bash\">section.text global _start;must be declared for using gcc _start:;tell linker entry point
<pre><code class=\"lang-bash\">SYS_EXITequ 1 SYS_WRITE equ 4 STDINequ 0 STDOUTequ 1 section.text
<pre><code class=\"lang-bash\">section.text global _start;must be declared for linker (ld)
<pre><code class=\"lang-bash\">section .text global _start;must be declared for linker (gcc)
<pre><code class=\"lang-bash\">section.text global_start;must be declared for linker (ld) _start:;tell linker entry point
<pre><code class=\"lang-bash\">section.text global _start;must be declared for linker (gcc)
<pre><code class=\"lang-bash\">segment .text;code segment global_start;must be declared for linker
<pre><code class=\"lang-bash\">section.text global _start;must be declared for linker (ld)
section.text global _start;must be declared for using gcc _start:;tell linker entry point movax,'8'
SYS_EXITequ 1 SYS_READequ 3 SYS_WRITE equ 4 STDINequ 0 STDOUTequ 1 segment .data msg1 db "Enter a digit ", 0xA,0xD
section .data;Data segment userMsg db 'Please enter a number: ' ;Ask the user to enter a number
section.text global _start;must be declared for using gcc _start:;tell linker entry point moveax, 45;sys_brk
; A macro with two parameters ; Implements the write system call %macro write_string 2 moveax, 4 movebx, 1
section.text global _start;must be declared for using gcc _start:;tell linker entry point mov bx, 3;for calculating factorial 3
section.text global _start;must be declared for using gcc _start:;tell linker entry point movecx,'4'
section.text global _start;must be declared for linker (ld) _start: moveax,3;number bytes to be summed movebx,0;EBX will store the sum
section .text global _start;must be declared for using gcc _start:;tell linker entry point mov ecx,len mov edi,my_string