There are several ways to write to port pins from assembler:
You can create a mask for the selected pin and use the 'set' and 'reset' registers
or
You can write some binary value directly to the output register.
Note all port registers are in principle 32 bits but you can address them 8, 16 and 32 bits at a time creating very flexible ways of driving the port pins (and very fast too if needed) It will take some studying, not only to understand the IO system but also how all addressing modes of the ARM CPU work. If you do not need the absolute maximum speed I would stick to C, in one of my own projects I deliberately used some assembler to get the 'promised' 120 nsec response to an interrupt and to keep my interrupt routine under 1 usec in total. It takes a lot of tweaking to get assembler routines right and for the rest of the code I used standard C and mbed libraries.
If you want to learn more about the inner stuff of the mbed's CPU get a copy of the UM10360 LPC17xx manual and also take a peek at:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0337e/index.html
Prepare for some heavy reading though :)
null