その後、宋側は約束の歳幣額を支払わなかっただけでなく、金の内紛を助長してその弱体化を図ったため、金は軍を南下させて首都開封に迫った。万事休した徽宗は「己を罪する詔」を発して退位し、帝位を長男の欽宗に譲った。欽宗は首都を包囲した金軍と、領土の割譲、賠償金の支払いなど屈辱的な内容の講和を結んだ。しかし、これに反発する主戦派により講和が守られなかったため、金軍は総攻撃を命じた。40日間余りの攻防戦の結果、1126年11月に開封が陥落した。この年が靖康元年であったため、これを「靖康の変」と呼ぶ。金は徽宗・欽宗以下の皇族と官僚など、数千人を捕らえて北方へ連行した（この出来事を「二帝北行」という）。彼らはそこで悲惨な自活の虜囚生活を送り、異郷の地に骨を埋めることとなったのである。また、同じくこの事件で宋室の皇女たち（4歳から28歳）全員が連行され、金の皇帝・皇族・将兵らの妻妾にされるか、官設妓楼「洗衣院」に入れられて娼婦となった。こうして宋はいったん滅亡したが、この変の際に都にいなかった欽宗の弟の康王構が江南に逃れて即位し（高宗）、都を臨安（現在の杭州）に定めた。これを南宋という。南宋は豊かな江南の経済力と地の利、その後の金の軍事力の弱体化に助けられて、その後1世紀半ほど生き延びることができた。しかし少数で多数の漢民族を統治する金の政治ノウハウはモンゴル帝国に吸収され、その両国とも制圧されることとなる。
宋は、建国当初から国内の節度使などの武人勢力を抑えるため文治政治をとったこともあって、遼・西夏の侵入に対抗できず、毎年銀や絹（歳幣）を送って和を保とうとした。そのため宋は財政難に陥り、その打開策（新法＝宰相・王安石の打ち出した数々の改革案）をめぐって官僚を二分する闘争が激化し、疲弊した農民の反乱も相次いだ。とりわけ第8代の皇帝徽宗は、政治を臣下に任せて書画・骨董に凝り、美女を漁るなど、風流天子と呼ばれる生活をして国費を浪費した。一方、政治を任された臣下の蔡京は専制政治を行ったため、政治は荒廃の極みに陥っていた。のちの満州東部で半農半猟の生活を営んでいたツングース系の女真族は、初め遼の支配下にあったが、1115年、族長の阿骨打に率いられて独立し、金を建国した。これを知った宋の徽宗は、従来遼に与えていた歳幣を金に送り、両国で南北から遼を挟撃することを提案した（海上の盟）。金はこれに応じて大軍で遼を攻撃して大打撃を与えた。しかし、宋軍の戦果は微々たるものだった。宋軍が弱体であったためであるが、宋側は伝統的な「夷を以て夷を制する（以夷制夷）」という考えから、遼と金がともに弱体化することを期待して、遼攻撃が消極的になっていたのである。しかし、金が宋の約束違反を責めたことから、宋は歳幣の額を大幅に上積みしてこの場をしのいだ。金は1125年、今度は西夏と金夏同盟を締結して遼を滅ぼした。
靖康の変（せいこうのへん）は、1126年、宋（北宋）が、女真族（後世の満州族の前身）を支配層に戴く金に敗れて、中国史上において政治的中心地であった華北を失った事件。靖康は当時の宋の年号である。
例えばa[16][16]の配列を16のスレッドで処理をした際に、全てのスレッドが同じバンクにアクセスしてしまい、バンクコンフリクトが発生することがある。この場合、中身のない列を加え、a[16][17]の配列にすることにより、同時にアクセスするバンクをずれ、これを回避することができる。
初期のコンピュータのCPUの制御回路は行き当たりばったりの方法で設計されていた。最も単純なものとしてはコンピュータの制御ロジックの順序制御のためにフリップフロップのリングを使っていた。1947年、Whirlwindの開発でコントロールストアを使って設計を単純化させるという概念が導入された。この際のコントロールストアはダイオードの2次元格子回路である。CPUクロックから "pulse distributor" で8個のタイミングパルスを生成し、それぞれが格子の異なる列を活性化させるようになっている。そのタイミングパルスに同期して制御信号でその中の一列を選択すると、それぞれの交点がCPUの各部を制御する信号を発するようになっていた。コントロールストアから発せられる信号群は、自動ピアノのピアノロールのような役割を果たす。すなわち、それぞれのビットがそれぞれの部分を制御するようになっている。ただし、コントロールストアの奏でる曲は短く、しかも繰り返し演奏される。1951年、モーリス・ウィルクスがそれを発展させ、マイクロプログラムに「条件付実行」の概念、すなわちコンピュータプログラムにおけるif文を追加した。ウィルクスの当初の実装は、ダイオード格子回路を2つ使うもので、1つ目はWhirlwindのコントロールストアと同じように制御信号を生成し、もう1つの格子回路で次に実行すべき列（1つ目の格子回路に格納されたマイクロ命令）を選択する。条件判断は、1つ目の格子回路で選択した列の一部のビット群の値で2つ目の格子回路の列を選択できるようにすることで実装した。これを従来の単純なコントロールストアを区別するため、「マイクロプログラム方式」と名付けた。1958年、IBM 709はマイクロコードによる商用初の別アーキテクチャのエミュレータを提供した。1964年 IBM System/360は、マイクロコードによる上位互換の確立（標準化）により、コンピュータ・アーキテクチャを確立した初期のマイクロプロセッサの命令セットはそれほど複雑なものではなかったが、命令デコード部の回路設計を単純化するためにPLAやROMを使用してCPU内の制御を行っていた。例えば MOS 6502 はPLAを使用して命令デコードと制御を行っていた。