8

I am learning assembly language for x86 architecture. But, i am unable to find any practice problems so that i can test my skills. Can you suggest me some practice problems or some small assembly language project to improve my skills.??

thanks in advance

silverflash
  • 97
  • 1
  • 1
  • 3
  • 1
    Darn, got closed while typing... I was suggesting that you re-implement a subset of the libc and UNIX tools, like: strcpy, strcat, conversion functions like a strtoi / itostr, strtol / ltostr, a mini printf, a mini cat... Should be enough to get you started, and the the rest of the libc is at your disposal for more project ideas. – haylem Jul 06 '12 at 06:35

3 Answers3

8

You may concentrate on optimization of existing sample codes. There are some good resources to look for:

The most interesting and a little complex tasks might be writing a compatible driver to devices that are handy to your needs.

Yusubov
  • 21,428
5

When I was studying assembly at university we were doing small applications all the time. We had tasks like input, output, different sums and sorts (for using loops), 'drawing' some images, like circles, with points, etc.

There also were large projects. The most interesting one is writing a driver. You could take a small device, like mouse, and try to implement a driver for it. If you also add some tests along to find out, for example, where is the problem in case smth is wrong, that would be great experience. Writing a driver properly requires good knowledge of the language, some research on the device and ports, and also pieces of code for testing.

This is project you wouldn't call small, but if you can implement this all than be sure you do know the assembly language!

superM
  • 7,383
0

One of the first things I did when learning/playing around with it was a blitting routine, I then added transparency and eventually shadows by specifying colours that would be transparent or a shadow.

James
  • 4,348