News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

Assembler languages for Linux

Started by shankle, February 14, 2016, 01:46:33 AM

Previous topic - Next topic

shankle

Thanks Andy for the encouragement.
NASM and I didn't get along to well.
Trying Yasm to see how it goes....

sbk

Quote from: shankle on February 21, 2016, 09:48:33 AMSince I am such novice with Linux I should keep
my mouth shut. Sorry.

That's exactly what you shouldn't do. If you have problems, you should always ask for help. You'd be surprised how many people make the same exact mistake when coming from a Windows environment. It's always difficult to remember that the default setup for most Linux systems is to give the user as little access as required to operate. Especially so if, on Windows, you always ran with a user that had administrative privileges. That's oddly common on Windows, but almost unheard of on Linux/BSD systems.

Don't be ashamed at things you don't know, there is way too much information out there for anyone to pretend they know everything. I prefer to think i know nothing, then I'm always happily surprised when I have an answer. :)

Gunther

Hi shankle,

Quote from: shankle on February 21, 2016, 11:53:34 AM
Thanks Andy for the encouragement.
NASM and I didn't get along to well.
Trying Yasm to see how it goes....

Yasm is a re-write of NASM (same syntax, same commands etc.). It's sometimes a bit more effective. By the way, Agner Fog is using more and more YASM.

Gunther
You have to know the facts before you can distort them.

shankle

Nasm has a forum.
I can't find a forum for Yasm. Therefor it's useless for me.
Wonder if any other Linux assemblers have any forums?
In my opinion, the lack of a good organized text to learn a new
programming language is essential. 

On the NASM forum i'm lucky if I get 1 response per day to my questions.
With no books to study about the language and erroneous, outdated and
hard to find solutions, one wonders how anyone can program in NASM.
As an example; I have compiled a program called Demo64. Then I linked
it. But when I try to execute it with ./demo64 it will only execute in a terminal.
I want it to run it on a full screen. From what I have read there is no explanation
on how to execute a program with ./demo64 to a screen.

sbk

Quote from: shankle on February 26, 2016, 11:03:01 PM
As an example; I have compiled a program called Demo64. Then I linked
it. But when I try to execute it with ./demo64 it will only execute in a terminal.
I want it to run it on a full screen. From what I have read there is no explanation
on how to execute a program with ./demo64 to a screen.

If you run the program from a terminal emulator, it's going to run in the emulator (like xterm, rxvt, or gome-terminal). If you want to use console applications directly in the system's console (fullscreen), you have to switch to the console using ALT+CTRL+F1. Linux runs several consoles, my system has 8, ALT+CTRL+F8 runs console that the graphical environment is on, and from ALT+CTRL+F1 to ALT+CTRL+F7 run text-mode consoles. When you switch to a console, you'll have to enter your username and password, but from there you can enter commands just like you do in the terminal emulator.

cman

I've seen some books available for Nasm programming on the Linux Operating system: http://www.amazon.com/s/ref=nb_sb_ss_c_0_23/186-0258296-3939720?url=search-alias%3Dstripbooks&field-keywords=linux+assembly+language+programming&sprefix=linux+assembly+language%2Caps%2C1051 . I haven't read any of them yet , so I can't recommend any of them. From what I've seen , Nasm is sort of a lower- level version of the Masm syntax , so I don't think it would be hard to learn: https://courses.engr.illinois.edu/ece390/archive/mp/f99/mp5/masm_nasm.html .

cman

I forgot , there is also a Nasm manual available in .pdf format : http://www.nasm.us/xdoc/2.09.04/nasmdoc.pdf. 

Gunther

Thank you cman for providing the book sources. I think Ray Seyfarth's book is worth reading. I've an older edition.

Gunther
You have to know the facts before you can distort them.

cman

I noticed some schools have older versions of these books available to read online , like "Assembly Language Step-by-Step: Programming with Linux" can be found here: http://faculty.petra.ac.id/indi/files/Assembly%20Language%20step%20by%20step.pdf. You have to read the book on your computer, though , which isn't much fun. :biggrin:

Gunther

Hi cman,

Quote from: cman on March 06, 2016, 05:16:26 AM
You have to read the book on your computer, though , which isn't much fun. :biggrin:

I think it's a PDF file, but it has 465 pages. That's the point.

Gunther
You have to know the facts before you can distort them.