Hay varias formas de codificar más de un bit por transistor haciendo que cada transistor controle una señal "analógica". Esto podría lograrse en una ROM, aunque con un coste considerable, si se utilizara un proceso que permitiera colocar 15 tipos de transistores ligeramente diferentes que pasaran distintas cantidades de corriente. Para leer una fila de bits, se aplica una fuente de corriente a cada columna, se enciende la fila y se mide la tensión resultante en cada columna.
En realidad, el flash puede funcionar según un principio algo similar, pero con una vuelta de tuerca: en lugar de tener que fabricar los transistores de forma diferente, el flash les aplica efectivamente unas condiciones de tensión extrañas, de forma que implanta o retira electrones a/de zonas que generalmente no son conductoras. Una de las principales ventajas de este enfoque frente a otro basado en la fabricación de diferentes tipos de transistores es que es posible golpear un transistor con un poco de carga, medir si ha recibido suficiente, golpearlo con un poco más, etc. hasta que cada zona haya recibido la cantidad perfecta de carga. Hacer eso es mucho más fácil y barato que tener que ajustar los procesos de fabricación para producir directamente 15 tipos diferentes de transistores.
Cabe señalar que, aunque la fabricación eficiente de una ROM mediante técnicas multinivel es más difícil que el uso de dichas técnicas en la flash, la ROM tiene una ventaja en algunas aplicaciones: la radiación ionizante que incide en una ROM mientras se accede a ella puede provocar la lectura errónea de un bit, pero no alterará la disposición física de los transistores en el chip. Por el contrario, si la información se almacena mediante la distribución de cargas en un chip, la radiación ionizante puede cambiar permanentemente el contenido de dicha información almacenada. En consecuencia, la ROM fabricada puede ser ventajosa en contextos que necesitan operar en entornos de alta radiación.