Sunday, October 12, 2008

Final BLog Question

Since not all MCS 213 students can try DEBUG commands because of the technical problems of our computers, search now any Turbo C program with assembly codes in it and run this in your PC. Check the result of your running C program.If the program produces the expected output, copy the Turbo C codes into your post and its result. YOu may do this by pressing Print Screen on your keyboard for the result of your program then, switch to Paint Brush and Paste. Resize the window and copy this to your post.

Thursday, October 9, 2008

Question#5

Research in the net the most recent assembler. Describe its history, nature and applications. Evaluate this assembler from its predecessor.Cite your reference.
Refrain from copying and pasting answers.

anSwer:

FASM is a low-level assembler. It does not support as many high-level statements as MASM or TASM.Instead it provides syntax features and macros which make it possible to customize or create missing statements. Its memory addressing syntax is similar to TASM's ideal mode and NASM. Brackets are used to denote memory operands as in both assemblers but their size is placed outside the brackets like in NASM.
FASM is a multi-pass assembler. It makes extensive code size optimization, and allows more forward referencing. A usual FASM construct is defining data or procedures only if they are used somewhere in the code, something that in most languages is done per-object by the linker.
FASM is based on the SSSO principle (same source, same output). This means the contents of the resulting file are not affected by the command line
[9] (except recently (in 1.67.24) added "-D" switch). Such an approach saves FASM sources from compilation problems often present in many assembly projects. On the other hand, it makes it very hard to maintain a project that consists of multiple separately compiled source files, or mixed-language projects. FASM projects can be built from a single source directly into executable without a linking stage.history:The project was started in 1999 by Tomasz Grysztar, aka Privalov (at that time, an undergraduate student of mathematics from Poland) and its first public release was announced on March 15, 2000. FASM is completely written in assembly language and comes with full source. It is self-hosting and has been able to assemble itself since version 0.90 (May 4, 1999). It has been used to write several operating systems including MenuetOS KolibriOS and DexOS.references:www.wikipedia.com

Sunday, October 5, 2008

Question #4

Justify what situations or applications programmers will rather use Assembly Languages than Higher Level Progamming Languages and vice versa.
Cite your reference.
Due: Sept. 25, 2008
ANswer:

Scripting languages represent a different set of tradeoffs than system programming languages. They give up execution speed and strength of typing relative to system programming languages but provide significantly higher programmer productivity and software reuse. This tradeoff makes more and more sense as computers become faster and cheaper in comparison to programmers. System programming languages are well suited to building components where the complexity is in the data structures and algorithms, while scripting languages are well suited for gluing applications where the complexity is in the connections. Gluing tasks are becoming more and more prevalent, so scripting will become an even more important programming paradigm in the next century than it is today.
I hope that this article will impact the computing community in three ways:


I hope that programmers will consider the differences between scripting and system programming when starting new projects and choose the most powerful tool for each task.

I hope that designers of component frameworks will recognize the importance of scripting and ensure that their frameworks include not just facilities for creating components but also facilities for gluing them together.

I hope that the programming language research community will shift some of its attention to scripting languages and help develop even more powerful scripting languages for the future. Raising the level of programming should be the single most important goal for language designers, since it has the greatest effect on programmer productivity; it is not clear that strong typing contributes to this goal.



reference:http://home.pacbell.net/ouster/scripting.html
Question# 3
Research in the net what is the best assembler and why.Cite your reference.
Due: September 22, 2008
AnsWer:
NASMA more mature assembler, has more features than FASM
.http://nasm.sourceforge.net/