Welcome to the Home Page of

Dr. William J. Pervin

Professor Emeritus of Mathematics,
Electrical and Computer Engineering,
and Computer Science
University of Texas at Dallas

Head, Computer Engineering Program (ret.)
Master, Engineering School (ret.)
Head, Computer Science Department (ret.)
Director, UT Regional Computer Center (ret.)
Chair, Mathematics Department (ret.)



I am now Professor Emeritus of Mathematics, Electrical and Computer Engineering, and Computer Science at The University of Texas at Dallas (UTD).

For information on what I've been up to, you may want to take a look at my vita.

Raspberry Pi Assembler

The source code for the book "Raspberry Pi Assembler"
published by Creative Commons, 2017
is available as a "7-zipped" file by clicking here.

A PDF file with the entire free text can be downloaded from here.

MIPS Assembler Source Code

During the 2003-2004 Academic Year I was on Special Faculty Development Assignment (Sabbatical).
I did research on Digital Signal Processing software and hardware.
In addition, I wrote the below mentioned book on MIPS assembler.


The source code for the first edition of my book "A Programmer's Guide to Assembler"
published by McGraw-Hill Custom Publishing, 2005 (ISBN = 0-07-353923-6)
is available as a "zipped" file by clicking here.
For a complete ERRATA, click here .

The third edition, published in 2010, is ISBN 0-07340887-5 and includes corrections of all those errors.
The code for programs in the first twelve chapters can be downloaded as above.
The code for programs in Chapter Thirteen may be obtained by clicking on the names of the programs here:

registers.h , page 149 c code , Hello World on page 150 , Factorial on page 154 , Fibonanacci on page 155

There is a new (September 4, 2011) version (9.1.0) of PCSPIM called QtSpim available through https://sourceforge.net/projects/spimsimulator.
Older versions of PCSPIM are still available through James R. Larus.

Another example of recursion beyond what is in the text is available with code for the classical QuickSort.s program.


I've worked in a wide variety of research areas. For more detailed information, you may want to glance at my list of publications.
I have directed Ph.D. dissertations in Mathematics, Computer Science, and Electrical Engineering.

Recently I wrote the above mentioned book titled "A Programmer's Guide to Assembler"
published by McGraw-Hill Custom Publishing, 2005 (ISBN 0-07-353923-6) and 2010 (ISBN 0-07340887-5).

Former work includes material for a Web-Based Course
in Symbolic Logic being supported by the University of
Texas System as part of the Multimedia Educational
Information Delivery initiative.
A draft preliminary version of the "Sophocles User's Guide" is available here.

Another interest was in the development of Digital Signal Processing courses for Computer Science Students.
In addition, I hoped to develop an advanced assembly language course based on a DSP chip. Refer to DSP for CS Students.

At present I have finished the above book on ARM Assembler Programming based on the Raspberry Pi computer and am preparing for a new project.


Since 1953, when I first taught Freshman Calculus, teaching has been an extremely important and satisfying part of my career.
Since then I have taught almost every Mathematics course, almost every Computer Science course, and even some Electrical and Computer Engineering courses.
That diversity has kept me interested in continuing to teach.
I divided my teaching effort between individual instruction (such as working with Ph.D. students) and teaching organized courses.
I encourage students to come talk with me in my office.

While I have, in the past, directed Ph.D. dissertations in Mathematics, Computer Science, and Electrical Engineering,
I will not, however, be taking on any more Ph.D. students nor do I have any Research Assistantships available.

Please avoid the telephone since I usually do not get such messages.

As Professor Emeritus I may neither be teaching nor having regular office hours.
Well, actually, I missed it so much that I offered
EE/CE 2310 Spring 2012, ENGR 3300 Fall 2012, CS 5349 Spring 2013,
CS 4384 both Fall 2013 and Spring 2014, and
finally, Fall 2014 I taught CS 4384/5349 and CS 1135.
I did not teach Spring or Summer 2015! I took "Bucket List'' trips!
Fall 2015 found me teaching both CS 4384 and ENG 3300 and nothing Spring 2016.
Fall 2016 I was back teaching CS 4384 again and in Spring 2017 and Spring 2018 I taught CS 3305.
After cruising during the Fall, I taught the Honors section of CS 4384 during Spring 2019 and again in Spring 2020. ]

For the Summer 2013 or Spring 2014 Workshop on
Functional Programming in Haskell, download the Haskell Platform and Notepad++ from the addresses listed here
and also download my example functions and outline (myFunctions.hs) here.       
Also, for graphics examples, look to

I will often be in my office in ECSN4.626
but interested students should e-mail me
and make an appointment so as to be sure
I will be there at any particular time.


Students may go to eLearning for information about my Spring 2020 class:
CS 4384 : Automata Theory
Click here for information about earlier classes.

UTD Software

UTD has available quite a lot of software for students.
For example, the Adobe Acrobat reader and other programs needed for many courses may be downloaded from


from a campus computer.

Address information

Please send business-related email to:


Please send snail mail to:

Dr. William J. Pervin
University of Texas at Dallas
Electrical Engineering: Mail Stop EC33
800 West Campbell Rd. Richardson, TX 75080-3021

Phone and FAX

Phone: (972) 883-2719 (NOTE: e-mail is better)
FAX: (972) 883-2710

   For the Astronomy Picture Of the Day, go to the site APOD. This site was recommended by Dr. Larry Ammann.

Old Glory
Homeland Security