Jump to content

Featured Replies

Posted

Okay. I want to get started on assembler, but before I begin, I'd like to know a few things first.

 

I've read that assembler has to be coded to be chip specific to the processor (I'm guessing it's standardized now, but I'd like to double-check.).

 

I'd also like to know if Assembly is still actually used for any programs today, or if almost everyone has moved to a higher language.

 

Also, if anyone has a good tutorial that can get me started on it, it would be much appreciated.

well, I dont know your first and last questions, but I belive Assembly is still used for drivers, small daemon applications, and enterprise programs. I dont know why someone would get into assembly, as its even more chinese to me then C++. But good luck anyway.
Okay. I want to get started on assembler, but before I begin, I'd like to know a few things first.

 

I've read that assembler has to be coded to be chip specific to the processor (I'm guessing it's standardized now, but I'd like to double-check.).

 

I'd also like to know if Assembly is still actually used for any programs today, or if almost everyone has moved to a higher language.

 

Also, if anyone has a good tutorial that can get me started on it, it would be much appreciated.

 

Assembly is still used for parts of programs that need to run fast, e.g. games.

  • Author
Well, okay, I guess I should take a look at it then... uh... it says there are three versions of assembler, which one should I pick? 8086?
well, I dont know your first and last questions, but I belive Assembly is still used for drivers, small daemon applications, and enterprise programs. I dont know why someone would get into assembly, as its even more chinese to me then C++. But good luck anyway.

 

 

assembly is leet, and is easier than C++ or any other language if u understand memory addressing really well

 

and

 

erondial

 

http://www.xs4all.nl/~smit/asm01001.htm#firstprg - may not be a good tut but atleast it shows u all the registers in 16 bit and a small description

 

http://www.freeprogrammingresources.com/assembly.html

http://webster.cs.ucr.edu/

 

thats all i can think of

 

u should get a book if u wanna learn..i am still trying to find one for myself :dfinger:

 

[EDIT] o yea u should start at 8086 and go ur way up.. these tuts are for 8086 i think...ive only read the first one, the others i just have for future readings

assembly language is 2nd generation its pritty generic so works with nearly all processors, so it dont matter what architecture the processor is weather it be somthing like RISK etc. I learnt using a program called BEBOP
Assembly is used mostly for operating systems. But it can be used for anything.
r00t']assembly language is 2nd generation its pritty generic so works with nearly all processors' date=' so it dont matter what architecture the processor is weather it be somthing like RISK etc. I learnt using a program called BEBOP[/quote']

 

nope assembly language is not generic, there are many different variaties of assembler. x86 happens to be the most common and largest of all.

  • Author

Alright...

 

If I wanted to go into the gaming industry (Just don't ask), would knowing assembly be a big asset?

I would imagine it would be required for a computer science major to take atleast one assemblly class, so you would probablly have to learn it even if it wouldn't be used much in your actual programming.
I would imagine it would be required for a computer science major to take atleast one assemblly class, so you would probablly have to learn it even if it wouldn't be used much in your actual programming.

I can confirm that.

 

Okay. I want to get started on assembler, but before I begin, I'd like to know a few things first.

 

I've read that assembler has to be coded to be chip specific to the processor (I'm guessing it's standardized now, but I'd like to double-check.).

 

I'd also like to know if Assembly is still actually used for any programs today, or if almost everyone has moved to a higher language.

 

Also, if anyone has a good tutorial that can get me started on it, it would be much appreciated.

 

good luck on it. I'm also just starting it, so I may be able to answer a couple questions...

 

Assembler is not portable. From what I understand from my class, it will be very difficult to move it between platforms. It's also fairly interesting, as you have direct access to memory and registers. But with that comes a lot of places you can screw something up in. Example would be multiplication and division. Multiplication takes a byte (word) sized number, character, or whatever, and turns it into a double word. division does the opposite. It's a lot of little specific things that make it difficult... another example would be adding characters and integers. But it does have it's advantages.

 

One of those advantages is it's fast. it's pretty much the human language for the ones and zeros of machine language. Makes for very fast assembling and executing. This makes it useful in games.

 

As far as tutorials... Sorry man... book or class I'd say. I'd offer to tell you what book I'm using, but I'm too lazy.

Every processor family has it's own assembly.

MCS-51, DSP56000, x86, z80 are just a few.

 

Good luck on writing an assembler, I promise you, you won't be done the next year.

I have a little parser written in assembly (it's able to parse itself ;) and it's 1000 lines.

The thing that actually assembles is 2000 lines long.

And then we have a little 64 bit assembler (the thing that assembles alone, again), it's 8000 lines of assembly.

z80 is awesome, powers the TI-83 series of graphics calcs and the original gameboy :D

 

I wrote a few very small progs in z80 asm back in high school, was 2000% faster than using TI-BASIC, especially when drawing stuff on the screen.

 

I can "read" assembly to the point where I can modify programs to remove registration screens (by NOPing out function calls, adding my own code to code caves, etc.) and freeze timers in games and stuff, but I'm still hoping to come across a really good guide to learning x86 assembly.

 

I've tried various tutorial sites, none of the code compiles when I perfectly follow their instructions. :P (tried like 4 different assemblers and various guides)

 

Any links to guides you've had good experience with would be appreciated.

I've tried various tutorial sites, none of the code compiles when I perfectly follow their instructions. :P (tried like 4 different assemblers and various guides)

 

Any links to guides you've had good experience with would be appreciated.

 

did u read any books and wat assemblers did u use?

did u read any books and wat assemblers did u use?

 

None of the major bookstores here (Barnes and Noble, Borders) carry any books on assembly language, and all the ones they can have shipped to the store aren't what I'm looking for. And I won't buy a book unless I can take a glance at it first.

 

TASM, NASM, MASM, and some other ghetto ones

Okay. I want to get started on assembler, but before I begin, I'd like to know a few things first.

 

I've read that assembler has to be coded to be chip specific to the processor (I'm guessing it's standardized now, but I'd like to double-check.).

 

I'd also like to know if Assembly is still actually used for any programs today, or if almost everyone has moved to a higher language.

 

Also, if anyone has a good tutorial that can get me started on it, it would be much appreciated.

 

 

My download links are currently down , but i have a few books for you if you wish(Ebooks).

 

Im to lazy to make a big post but on your question to wether its used today:

 

Not really , entire programs arent created , however it can be used for optimizations ,ect.

 

Alot of people use the higher languages but Assembly (Not assembler) is a worthy skill

 

 

As for the processor question : In the older days YES it was most definently biased on what your using.

 

Now it doesnt really matter, (Rare exceptions)

 

 

ill try to get those download links for you tho.

None of the major bookstores here (Barnes and Noble, Borders) carry any books on assembly language, and all the ones they can have shipped to the store aren't what I'm looking for. And I won't buy a book unless I can take a glance at it first.

 

TASM, NASM, MASM, and some other ghetto ones

 

I've read Assembly Step-By-Step by Jeff Duntemann... It was pretty gay since it taught me how address memory and how DOS works more than ASM itself. It came with NASM which I find really bad. It's so hard to find a good book on ASM. And is this Real Mode Segmented Model code?

 

.model small
.stack
.data

MSG db "Hello world$"

.code

main proc

 mov ax,seg MSG
 mov ds,ax
 mov dx,offset MSG

 mov ah,09h
 int 21h

 mov ah,4Ch
 int 21h

main endp
end

  • 2 weeks later...
Sorry for a little late answer, but yes it's real mode code. You can't use BIOS interrupts in pmode (PE's). So you have to assemble that code to 16-bit (.com).
Sorry for a little late answer, but yes it's real mode code. You can't use BIOS interrupts in pmode (PE's). So you have to assemble that code to 16-bit (.com).

 

hmm, so i guess that NASM doesnt use this syntax, o well i like this syntax better than ORG 0100h or something like that

org 100h mean's that the offset of the program in memory is 100h.

A .com program is loaded into one sector of memory (512kb).

The instruction org 100h, simply tells the assembler that it has to add 100h to all addresses.

Guest
This topic is now closed to further replies.