LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 12-04-2013, 04:30 PM   #16
wpeckham
LQ Guru
 
Registered: Apr 2010
Location: Continental USA
Distribution: Debian, Ubuntu, RedHat, DSL, Puppy, CentOS, Knoppix, Mint-DE, Sparky, VSIDO, tinycore, Q4OS,Manjaro
Posts: 5,628

Rep: Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695Reputation: 2695
Assembly Language Windows Application Programming


Check this site:
https://www.grc.com/smgassembly.htm

That is what got me started.
 
Old 12-31-2013, 05:37 PM   #17
Norseman01
Member
 
Registered: Nov 2012
Posts: 85

Rep: Reputation: Disabled
Quote:
Originally Posted by CamTheSaxMan View Post
I'm currently learning x86 assembly language. I can create simple command-line programs, but I'm looking to expand my skills to graphical applications. Does anyone know where I can find documentation on this? And please don't tell me to use C/C++ or any of that object-oriented crap. I'm interested in assembly.
The responses I have read thus far are correct in general terms. So called "High Level" programming languages have squeezed out Assembly. It seems most programmers have trouble with details. Assembly demands that very attention.

OK you others that read this - stop throwing things at me. Like some from a time gone by I used Assembly. COBOL in particular back then and most compilers today require a ton of extraneous typing to get even simple things done. Took too many cards to do the simple. I went through BASIC, FORTRAN, Small C, C and a bunch of others and kept going back to Assembly. Then I found Python. (oops - it's
an OOP language that allows you to inline actual code.) So far, if I need anything faster I go back to Assembly.

OK, to do GUI from scratch in Assembly is not really the path to walk.

Try this approach instead.
. 1) get a good assembler
. 2) hire someone from Black Ops to get you the CPU instruction manual
. for the computer you will be using and the one for the target CPU.
. 3) while Special Ops is at it, you will need the respective OS manuals.
. 4) get a good Cross Assembler program. (In source code is best)
. 5) ALL I/O is to be directed through replaceable subroutines.
. 6) ANY lib you want to inspect from a Linux machine needs the source to
. be compiled with the -S to convert it to yield Assembly output.
. AND you will need the .a to tell you where what is located within.
. 7) The Cross Assembler needs to able to take source binary and translate
. instruction by instruction to the target binary. Things like
. RET, RETZ, mov R1,R2 and other such types are easy. The ones with
. address are not so easy. JUMP ADDRESS is an example. $ADDRESS is
. made a LABEL and placed where it goes in the output.
. 8) Do not expect source and target files to be be same length.
. they won't be. Hence the ADDRESS problem.

The main reason that Assembly is Boo-Hoo'd is because with Assembly, IF the Machine can do it, SO CAN YOU!!! And that scares all who want the machine to never divulge what it knows or what it, the company, does.

Step 6) Why completely re-invent something complex when it is much easier to simply clean it up, skip this, tweek that, inline here and so forth and use the enhanced version. Such action often eliminates "Back Doors" in the process. And by the time you get it cleaned up you will have a very good understanding of Assembly.

Just remember this at all times - THE MACHINE IS BINARY. It has no idea if a particular pattern of bits are: part of a picture, a character of an alphabet, a piece of instruction, a whole number, a float number, a paper control, or anything at all. IT DON'T CARE. CONTENTS ARE BINARY. Depends to what part of the CPU that pattern is fed as to what purpose it will be deemed. Again, there is no difference between TEXT, NUMERICAL, ADDRESS, CONTROL or any other Human fancy of thought. Not to the machine. It's all the same, it's just binary.

Special note on graphics: Think of Antie's beads. Think of opening the clasp and making a straight line of the necklace. Each bead is a byte of a picture. Can take more than one to produce a color pixel. Can you see the picture in this arrangement? No? Neither can the Machine. I hope you are good at matrix math.

good luck
 
1 members found this post helpful.
  


Reply

Tags
assembly, gui, linux, programming



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to find out indone information and datablocks information in a file system chaitanya1982 Linux - Newbie 1 09-24-2008 01:58 AM
What are some good resources to learn assembly Language? theunixwizard General 16 07-24-2008 03:27 AM
Audio programs use many resources xeo Linux - Newbie 1 05-30-2005 03:48 PM
Kernel resources Information rabee77 Linux - Software 2 02-21-2005 01:23 AM
good resources on creating ur own distro gekkokid Linux - General 2 04-21-2004 12:53 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 11:34 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration