Author Topic: NASM in Education  (Read 10185 times)

Offline damage3025

  • Jr. Member
  • *
  • Posts: 3
NASM in Education
« on: November 26, 2011, 10:27:44 AM »
I'm an undergraduate student.

To my little knowledge, most textbooks/university courses are still using MASM or TASM, please correct me.

In my humble opinion, NASM is very suitable for educational purpose because NASM is not rooted in DOS and students can explore NASM internals.

I'm going to work on this issue some day. I'm working on my final now :)

I want to know existing applications of NASM in eduction.
If you are also interested in this issue, please let me know.

Offline damage3025

  • Jr. Member
  • *
  • Posts: 3
Re: NASM in Education
« Reply #1 on: November 26, 2011, 11:08:49 AM »
One of the related resource I found: http://www.drpaulcarter.com/pcasm/

Offline Frank Kotler

  • NASM Developer
  • Hero Member
  • *****
  • Posts: 2667
  • Country: us
Re: NASM in Education
« Reply #2 on: November 26, 2011, 12:46:58 PM »
Right. We also have:

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

Perhaps not "suitable" for a College text? I agree that Nasm should be "suitable" for learning/teaching purposes...

Best,
Frank


Offline damage3025

  • Jr. Member
  • *
  • Posts: 3
Re: NASM in Education
« Reply #3 on: November 26, 2011, 02:27:40 PM »
To my knowledge, there are several types of environment in learning/teaching Assembly Language:
1. Custom 8086/8088 machine
It is used in my university, students do their course project on their own configurable machines.
Students can do programming for their projects on their own GNU/Linux boxes or Macintoshes if NASM is used :)

2. PC with MS-DOS (actually Microsoft Windows in most case)
Most textbooks I saw use this.
Most students are not interested in DOS, I guess.
NASM does not support Memory Models. I'm not sure about the consequence...

3. PC with Protected Mode OS (GNU/Linux, Mac OS X, Microsoft Windows, ...)
Some books and online documents use this.
Can interest students more, I guess.
How to replace BIOS/DOS interrupts? Call C standard library? I prefer POSIX API, but majority use Microsoft Windows...

I think translating (from 2 to 3) existing textbooks' examples and producing some supplements are better than writing new textbooks. Not every professor really has time to change textbook :)

Please correct my classification and tell me some widely used textbooks. Maybe I can start doing code examples translation some day.
I'm sorry for not mentioning BSD, BeOS, FreeDOS or other cool Operating Systems...
« Last Edit: November 26, 2011, 04:24:39 PM by damage3025 »