flat assembler
Message board for the users of flat assembler.
Index
> Main > Should i ... |
Author |
|
vid 16 Oct 2006, 09:43
what do you call "success"? money, or quality of your products? For money / career, you should rather learn .net, php, etc. It is possible but hard to find good job with assembly. It's much easier to find well paid boring job with HLLs
For quality of your apps, assembly knowledge is must-have. |
|||
16 Oct 2006, 09:43 |
|
donkey7 16 Oct 2006, 10:53
use assembly if you enjoy coding, dislike hll restrictions, like programming tricks, want to get maximum pefrormance, learn how everything is really done, use your creativity, etc.
use hll if you want faster development, better support (it's not the fault of assembly itself, but most programmers doesn't care about assembly), less bugfixing, strict programming rules (thus improved readabilty of others code), more jobs ,etc. many skilled coders use combination of c++ and asm, but still many things are automated in hll and performance isn't highest possible. |
|||
16 Oct 2006, 10:53 |
|
vid 16 Oct 2006, 11:14
just note: understanding asm is vital to be good C / C++ coder. you don't have to code in asm, but you need to understand machine you are coding for
|
|||
16 Oct 2006, 11:14 |
|
cod3b453 16 Oct 2006, 12:41
Industry always goes for the highest level language at the time [time vs money], so it used to be things like C/C++ now its gone more to Java, C#, .NET etc BUT there is still a need for lower level languages like ASM, C, C++ in certain areas.
ASM is a very good way to learn how every aspect of a PC works, the best example is probably trying to write an operating system, it requires a lots of reading, but you learn everything. |
|||
16 Oct 2006, 12:41 |
|
donkey7 16 Oct 2006, 14:52
also keep in mind that experience and general knowledge makes big difference.
by using sophiscated algorithms one can write many times faster programs in for example java, than another one in assembly using simple algos. code design is also important. one can write more readable sources in asm than another one in hll. everything depends on coder experience and community support. for example, there aren't such thing as libasm (as opposec to libc) that would consist of many simple and commonly needed functions or stl equivalent for asm. and most asm coders don't know fasm, so they uses old 'dinosaurs' like tasm or masm, which have very limited macro capabilities. etc. etc. asm is not always the best solution. if, for example, you want to write program that is used only once or by very limited amount of users or generally rarely then you must decide whether the effort put into making effective assembly code is worth the effect, i.e. if you want to make program that replaces all 'a' with 'b' on odd lines in file 'dsaf.txt' and be used only once then using hll or script is a wiser solution for this problem. |
|||
16 Oct 2006, 14:52 |
|
sleepsleep 20 Oct 2006, 23:38
sorry for late reply
hopefully you r still interested with asm (just read ur post in feedback) Quote:
yes. let me share a little bit of my experience. got my first pc, win95. then playing with the OS, deleted the vga driver off from the OS the next day i got the pc. felt scary. (coz don't know how to return it back to normal 24bit color). and reading some buddled manual book, take a vga driver and install it back. saw a little manual explain about internet and a simple HTML source, then try it using notepad. after than learning asp then php. have no idea what is windows application, play with vb, found some C tutorials but totally got confused by those data types always dream to create own OS and leart that i need to know asm in order to do so. get an asm book 400 to 500 pages which i totally got no idea what every pages is talking about, then spend time on it and learn asm, then found fasm, then learning windows api through icezelion tutorial. it is just how deep and detail you want to learn. after all, these are all just bits, it was human designed format, specification that make all these things complex and force us to follow the "spec" in order to use it. follow your heart and happy coding. |
|||
20 Oct 2006, 23:38 |
|
Dex4u 21 Oct 2006, 00:14
Most job are for higher leave languages, that because they want the job done quick.
But theres times when you need asm coders, example new processors etc, then because theres not many asm programmers they get payed more. I believe there will be more work for asm programmers in embedded sys etc. But you should also learn to code for arm as well as x86 + others. |
|||
21 Oct 2006, 00:14 |
|
Octavio 21 Oct 2006, 01:15
Dex4u wrote: Most job are for higher 'level' languages, that because they want the job done quick. And also because many people thinks that a 2MB program is better than 1MB program so bloatware is a required feature ,i read that ps3 games will be 25GB of size and doubt they care about size optimizations |
|||
21 Oct 2006, 01:15 |
|
Goplat 21 Oct 2006, 01:53
Console game makers don't have any motivation to keep size down since they would still have to buy whole DVDs even if the game only took up a fraction of the space on it. Also, the bigger a game is, the longer it would take to download, so bloat discourages copying as well.
|
|||
21 Oct 2006, 01:53 |
|
rugxulo 21 Oct 2006, 03:08
What kind of programming do you want to do? Systems stuff (C, asm)? GUI progs (Obj C, C++)? Web stuff (Python)? Multipurpose scripting (Perl)? Insanity (Intercal, Brainf***)?
Seriously, choose a language (or two) that you're interested in (based on personal taste, previous experience, popularity based on others' work, etc.). Most hyped "new" languages? Java, Python Most popular conventional langs? C, C++, BASIC Other commonly used langs? Perl, asm Most interesting? Forth, Lisp It depends on what you want to do. P.S. I agree completely with donkey7 except I don't consider macros (which are almost always non-standard and incompatible with other assemblers) true assembly (i.e., disassembled code doesn't have 'em). BTW, sed is a good, (usually) small, fast scripting util to replace 'a' with 'b' on odd lines in dsaf.txt. Always be aware of dedicated tools for specific tasks, even if you (wisely?) decide to ignore them. Don't reinvent the wheel without a good reason. P.P.S. Octavio, I think the data ("textures" and other crud) is taking up most of that 25 GB (or so I heard ... e.g., Doom 3 levels and textures had to be modified to accomodate XBox 1's relatively limited 64 MB of memory). |
|||
21 Oct 2006, 03:08 |
|
Niels 21 Oct 2006, 10:26
Hello f14t,
You asked 3 questions... 1. Quote: Are the Programmers who do not use assembly for their work, in any way inferior or less skilled than the ones who use Assembly? I assume you meant 'programming C( or other HLL)' when using the word 'work', although I am someone who thinks that any human would benefit from learning ASM..., but to continue with your question, knowing ASM lets you understand p.a. C better, that could mean that you will benefit from it and program better in p.a. C. 2. Quote: For making big name (and money as well) can i safely ignore the Assembly language ? I think that is the wrong approach to choose any language. Don't choose the guitar for the money if you heart says violin. 3. Quote: In short is it better to use High Level Languages, to Grow Career wise and Financially ? Yes, if you reference to man-made 'careers' and the man-made understanding of 'wealth'. Niels. |
|||
21 Oct 2006, 10:26 |
|
Niels 21 Oct 2006, 11:04
If you want my futuristic opinion about question 3:
I believe the greater understanding of humankind will give ASM a alot more users. Niels. ps. C can never explore the full potential of ASM. |
|||
21 Oct 2006, 11:04 |
|
Niels 21 Oct 2006, 11:14
I believe that companies like NVIDIA and likewise should be a shamed, they try to make the hardware go as fast as they can and they let people pay big amounts of money for it and then they use drivers in C, download the latest driver, how much is it this time 20Mb, 30Mb?
Niels. |
|||
21 Oct 2006, 11:14 |
|
Dex4u 21 Oct 2006, 17:06
Bit off topic, but this is a great demo, of how to make games small, but still with good graphics. http://produkkt.abraxas-medien.de/kkrieger
Not bad for 97k . |
|||
21 Oct 2006, 17:06 |
|
F9 23 Oct 2006, 13:20
Only read the first 2 or three replies so far and point were made...
Quote: just note: understanding asm is vital to be good C / C++ coder. you don't have to code in asm, but you need to understand machine you are coding for There is the majority of your answer !!! I am the ultimate sceptic. It took me over two years of buying plenty of $50.00 and better MS, how-to, what-to do books and I reading tons of threads related to this very question, before i accept to program in assembler. If you are more than serious about what you want to do, and have a decent amount of time to spare, (testing, reading etc) you got no choice because it ONLY makes good since to go from ground up. It's all about how low you are willing to go to pop that bugged and see how the so-called higher-ups got to be called what they are today. c, C++, .net etc while all at the saMe time coming up with new un-known things. It all end up in assembler or what some call assembly. Do c for the money. Do asm than c for the money, the mind, THAN much much more. Quote: For quality of your apps, assembly knowledge is must-have. Case close... other than it's known as assembler not assembly and never forget that and accept no difference !!! |
|||
23 Oct 2006, 13:20 |
|
donkey7 23 Oct 2006, 17:28
it depend very much on how you perceives assembly.
great majority of hll programmers thinks assemblers are stupid, asm code is hundreds times longer, modern hll compilers optimizes code almost as good as asm programmers, etc. this is untrue. look at fasm. it has powerful macro preprocessor with which you can design your code as you like (almost ). the only thing that is unnecesarily complicated in asm is complex mathematic operations. but this is caused mainly by (stupid) fpu design. with asm you always have to write a few times more lines of code (2x, 5x, 8x, it depends on your asm experience, but not 20x or 100x). asm is used mainly for three things: - programming lowest level hardware interfaces and runtime functions. - speed optimizations. - bypass hll compilers drawbacks/ highest control of the code. fist two points don't need explaining. third is the thing that (together with second point) gives you the power of assembly. some peaople like this feeling (like me ) and prefers to do some things in unusual ways that are impossible to implement in hll's. it's some kind of programmind art. hlls were made to speed up writing things that are made many times and asm is used mainly for unusual/ uncommon things. asm is good if you want highest performance (to compete with others). if performance isn't your main concern don't use asm. this is the most important condition for language choice. many other factors can come to mind. the best way to determine if assembly is good for you it to treat asm as a hobby. after two or three years of asm coding (in fasm ) you can tell yourself is asm is the right choice. do what you want, but don't seed (?distribute?) outdated, untrue, discouraging stereotypes about assembly. just point to fasm forums there are many beautiful things made in asm... |
|||
23 Oct 2006, 17:28 |
|
f14t 26 Oct 2006, 12:07
For hobby, i love to program the scariest algorithm in Assembly.
But For professional work ... i think i am quite undecided as yet. I believe that one should use assembly only if it's impossible to do without. For example to write a compiler you need to not only learn the assembly but you also will be thinking ways to generate optimized assembly algorithmatically. When you write an OS there are a couple of things only possible through assembly. So, if my job or rather work at hand does not absolutely necessitate i should not be using assembly. As for optimization in assembly, i rather feel that's too bothersome. We must design faster and better yet cheaper hardware than worrying for every single performance hike and space bit in the already, on the way of becoming obsolete, weared out hardware designs. Have you heard of DNA computer ? I beleive it's gonna be atleast a million times faster and better than the contemporary ones. Look ahead. I like using assembly for fun. Because it's the strange and creative (nothing short of an Art) way of programming the obvious things and ideas. |
|||
26 Oct 2006, 12:07 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.