建构一张图，使每个点（Vertex）在程式中代表一个独立的变数。当变数被同时使用时，则利用"干扰边"（Interference edges）连结两个节点，当变数同时涉入move指令时，则建立"优先边"（preference edges）。可以透过K-coloring用来解决暂存器配置的问题（K为暂存器可用的数量）。两个共享一个干扰边的节点不会被分配相同的颜色，而共享一个优先边的节点可能会被分配相同的颜色，有些节点可能一开始就会被上色，代表这些变数因为惯例或是模组间沟通的因素而必须留在某些特定的暂存器，图着色