Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!lll-winken!uunet!math.fu-berlin.de!unido!aega84!tmcsys!lothar From: lothar@tmcsys.UUCP (L. Hirschbiegel) Newsgroups: comp.unix.questions Subject: Re: Need Assembly lang. to learn C? Message-ID: <382@tmcsys.UUCP> Date: 22 May 91 12:41:56 GMT References: <1991May21.175914.3681@rodan.acs.syr.edu> <1991May21.210859.9687@ux1.cso.uiuc.edu> Reply-To: lh@aega84.UUCP (L. Hirschbiegel) Organization: Private Site Lines: 38 In article <1991May21.210859.9687@ux1.cso.uiuc.edu> gordon@osiris.cso.uiuc.edu (John Gordon) writes: >ldstern@rodan.acs.syr.edu (Larry Stern) writes: > >>To all: a local instructor, who teaches C, has told several of us who are >>interested in his course that we should take an Assembly language course >>first. Even though his course is C in the DOS environment and a knowledge >>of 8088/80286 would no doubt be useful, we are wondering if this is really >>necessary. Any comments from C programmers? > > Absolutely not. It might be helpful in understanding the finer >aspects of pointer operations, but it is definitely not necessary. I have >been programming in C for several years, and consider myself fairly good >at it, and I know virtually nothing about assembly language. I did know >BASIC and Pascal first, though. > >John Gordon Hmm. You're right, it is definitely not necessary to take an assembler course prior to starting programming in C. But let's face it: it can make life much easier. C is close enough to the assembler level. Maybe it would be a bit too much to go through a complete assembler programmers course, but what about some fundamentals (register concept, addressing modes, stack handling)? I suppose it would be much easier for a C beginner with fundamental knowledge of assembler to understand something like ((*ptr++)<<8) and the whole bunch of pointer arithmetics, not to mention the concepts of global and local variables and so on. Anyway: if you want to write really sophisticated C code (for example speed optimized system routines) you will probably always realise concepts which are closely related to the underlying assembler and/or cpu capabilities. Or do you REALLY trust your optimizer as much as your own skills... :-) ? Lothar Hirschbiegel -- ----------------------------------------------- L. Hirschbiegel, AEG - A84, Frankfurt (Germany) email: unido!aega84!lh tel: -49-69-66414316 -----------------------------------------------