Clanky, if you want to see what can be done in asm, go over to intro-inferno and search for productions from a group called wamma
There's a guy called Yobi who codes some of the most amazing low byte stuff you've ever seen! Honestly, you would not believe the effects you can do in 256 bytes!!
Typically asm instruction sets are not so bad to learn, for a start, there are far fewer commands to worry about and on the pc, you just use them to do the stuff that jim says.. You can also invoke interrupts to open screens etc..
mov al,13h <-- That just puts the desired gfx mode into the register al
int 10h <-- Initialise the video mode
There are several registers, you can think of them like variables, and you can store memory addresses in them or data and perform operations on that data exactly the same as you would in basic, only the command set is different.
Assembly language was developed a long time ago to help programmers write programs for the first computers.. Originally all programs were written in binary on punch cards, assembly language (because of it's limited command list and simple commands) is very easily translatable into machine code that the computer understands. It's cool to use, very powerful and produces extremely efficient programs!