|
@@ -14,13 +14,13 @@ _start: # _start symbol
|
|
|
# the second cmdline argument of this program and is
|
|
|
# found at %rsp + 64bit (=8byte) after the pop above.
|
|
|
xor %rdx, %rdx # Zero %rdx register = no special flags for call
|
|
|
- syscall # Ask Linux to perform syscall index by rax
|
|
|
+ syscall # Ask Linux to perform syscall indexed by rax
|
|
|
|
|
|
test %rax, %rax # Test if return value of syscall in %rax register is
|
|
|
# zero
|
|
|
jz exit_zero # If yes, exit zero
|
|
|
|
|
|
- neg %rax # If not negate error value (linux return negative numbers
|
|
|
+ neg %rax # If not negate error value (Linux returns negative numbers
|
|
|
# in %rax for system error (range -4096:-1)
|
|
|
mov $10, %bl # Set to "10" the 8 low bits od %rbx register
|
|
|
|
|
@@ -31,8 +31,8 @@ _start: # _start symbol
|
|
|
# If I divide it by "10" the quotient is the first digit
|
|
|
# and the reminder is the second one (from left to right)
|
|
|
mov $48, %bl # Put ASCII "0" in 8 low bits of %rbx register
|
|
|
- add %bl, %al # Add ASSCII "0" one digit number in 0-byte of %rax register
|
|
|
- add %bl, %ah # Add ASSCII "0" one digit number in 1-byte of %rax register
|
|
|
+ add %bl, %al # Add ASSCII "0" to the one digit number in 0-byte of %rax register
|
|
|
+ add %bl, %ah # Add ASSCII "0" to the one digit number in 1-byte of %rax register
|
|
|
push %ax # Push 16 low bits of %rax register (contains concatened ASCII
|
|
|
# bits for the two digits of our error code)
|
|
|
|
|
@@ -40,7 +40,7 @@ _start: # _start symbol
|
|
|
# in stack just after the digits of our error code).
|
|
|
# (All this is to avoid 2 sys_write calls above)
|
|
|
|
|
|
- # Write generic part of system error message to stderr
|
|
|
+ # Write generic string for system error message to stderr
|
|
|
mov $1, %rax
|
|
|
mov $1, %rdi
|
|
|
mov $err_msg, %rsi
|