With computer related jobs its not really about the degree's as much as it is what you can do. If you are a good programmer you should be able to get a programming job as long as you can prove yourself to the employer. Jobs in other fields rely more on degrees because you really can't prove to them how much you really know when applying for a CEO position or something along those lines.
If you do most programming degrees they do offer alot of those classes in other things other than just programming but it just isn't in as much detail as it would be if you did IT. If you would like to see the curriculum for a software engineering degree which is programming but focused on software creation you can go HERE
and on the right click on 2008-2009 catalog and then go to engineering on the left nav bar > then down to software engineering and those are the classes I am taking for my major and you will find that alot of the stuff you are looking into learning are included in that degree. There isn't a whole lot of hardware and networking but if you just do a computer information systems degree which is a basic programming degree it offers a lot of classes that deal with networking, OS, hardware and such. Some schools will also let you test out of some of the classes VIA a test so you may find you can skip some of the basic classes and still get credit for them.