There are cases where a symbolic instruction is translated into more than one machine instruction. But in general, symbolic assembly language instructions correspond to individual executable machine instructions. High level languages are abstract. Some early high level languages had a close correspondence between high level instructions and machine language instructions. The trend over time has been for high level languages to increease in abstraction.
Assembly language is much harder to program than high level languages.
The programmer must pay attention to far more detail and must have an intimate knowledge of the processor in use. But high quality hand crafted assembly language programs can run much faster and use much less memory and other resources than a similar program written in a high level language. Speed increases of two to 20 times faster are fairly common, and increases of hundreds of times faster are occassionally possible. Assembly language programming also gives direct access to key machine features essential for implementing certain kinds of low level routines, such as an operating system kernel or microkernel, device drivers, and machine control. High level programming languages are much easier for less skilled programmers to work in and for semi-technical managers to supervise.